# Setting auto_linklocal on loopback Interfaces not working



## geekgee (Jul 28, 2015)

I have setup a lab to play with IPv4 and IPv6 OpenVPN tunnels with OSPF using BIRD… a fun learning experience having not worked very much with IPv6 or dynamic routing.  The lab comprises one OpenBSD 5.7 32-bit VM and two FreeBSD 10.1 64-bit VMs.

I opted to create an additional loopback interface (lo1) to assign the IP addresses for accessing the VMs across the tunnel but had an issue where the route to the IPv6 addresses on lo1 on the FreeBSD hosts were not being propagated.  I eventually traced it to the lo1 interface not having a link-local address… a requirement of OSPFv3 as I understand it.  The OpenBSD host had a link-local address on lo1 and was propagating the IPv6 address I had assigned but the FreeBSD hosts were not.  I manually added a link-local address to lo1 on the FreeBSD VMs to work around the issue.

So, I was curious as to why auto_linklocal is not working on FreeBSD loopback interfaces… at least on ones other than lo0.

If I run the following commands:
`ifconfig lo1 create
ifconfig lo1 inet6 -ifdisabled up`

I get the following with no link-local address:

```
lo1: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
        options=600003<RXCSUM,TXCSUM,RXCSUM_IPV6,TXCSUM_IPV6>
        nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
```
Contrast this with the same commands but on a tunnel interface and there is a link-local address.

```
tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1500
        options=80000<LINKSTATE>
        inet6 fe80::250:56ff:feb3:6fca%tun0 prefixlen 64 scopeid 0x8
        nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
```
What am I missing?

Thanks in advance,
Howard


----------

