В целях самообразования решил поэкспериментировать с ipv6 сокетами. Но возникла проблемка - никак не могу понять суть поля sin6_scope_id в структуре sockaddr_in6
struct sockaddr_in6 {
    sa_family_t sin6_family;    /* AF_INET6 */
    in_port_t sin6_port;        /* Transport layer port # */
    uint32_t sin6_flowinfo;     /* IPv6 flow information */
    struct in6_addr sin6_addr;  /* IPv6 address */
    uint32_t sin6_scope_id;     /* IPv6 scope-id */
};
addr.sin6_scope_id = if_nametoindex("eth0");
