IPV6 Link local addresses are autoconfigured addresses based on the devices MAC address.

Link local addresses are used by various auto configuration mechanisms to refer to other devices on the same link (eg autoconfigured routes use the link local address of the router). Generally speaking you would not usually use a link local address except in routing tables.

An inherit property of link local addresses is they are only valid on the link they belong to. Thusly if you wish to send a packet (eg ping) a link local address, you must specify which interface you wish to use.


 $ telnet.netkit fe80::205:1cff:fe10:5edf%wan0 bgpd
 Trying fe80::205:1cff:fe10:5edf%wan0...
 Connected to fe80::205:1cff:fe10:5edf%wan0.
 Escape character is '^]'.
 $ ping6 -I eth1 fe80::202:2dff:fe51:a1b2

This, and other gotcha's with IPv6 is discussed in IPv6LessonsLearnt.

See IPv6Addressing, Compare SiteLocal and GlobalScope addresses.