IPv6 scoped addresses IPv6 introduced scoped addresses: link-local, site-local, scoped multicast addresses. Explicit scope designation is necessary. Advanced API sin6_scope_id: very limited support, ambiguous spec. If you need to support link-local, use advanced API. Do not generate sockaddr by yourself. getpeername, getsockname, getaddrinfo Scope boundary routers need a hack. very few implementations, less experience Text representation we propose "%" e.g. fe80::1234%2 for fe80::1234 on the link "2". getaddrinfo() will interpret this and set sin6_scope_id accordingly.