The ugly face of IPv6 OSPFv3 uses link local addressing a lot link local addresses need to know the outgoing interface addressing scope e.g. fe80::20a:e4ff:fe23:e9a9%em0 128bit is insufficient to identify a host struct in6_addr can not represent theses addresses correctly but struct in6_addr is used often in the socket API big bug in the standard