Sockets 套接字选项IPV6\u PKTINFO

Sockets 套接字选项IPV6\u PKTINFO,sockets,Sockets,我想使用IPV6_PKTINFO选项在sendmsg()中指定传出IPV6地址。套接字既不绑定到地址也不绑定到接口。我是否应该始终将iIndex与源地址一起指定 (根据rfc3542: 内核必须验证请求的源地址确实是 分配给节点的单播地址。当地址是作用域时 第一,它的作用域可能有模糊性 尤其是链接本地地址的情况 内核必须首先根据 目标地址或传出接口的区域(如果已知), 然后对地址进行限定。这也意味着 通过指定非绑定套接字的源地址 IPV6_PKTINFO粘性选项,除非传出接口也是 指定。应用程序

我想使用IPV6_PKTINFO选项在sendmsg()中指定传出IPV6地址。套接字既不绑定到地址也不绑定到接口。我是否应该始终将iIndex与源地址一起指定

(根据rfc3542:

内核必须验证请求的源地址确实是 分配给节点的单播地址。当地址是作用域时 第一,它的作用域可能有模糊性 尤其是链接本地地址的情况 内核必须首先根据 目标地址或传出接口的区域(如果已知), 然后对地址进行限定。这也意味着 通过指定非绑定套接字的源地址 IPV6_PKTINFO粘性选项,除非传出接口也是 指定。应用程序只需将bind()用于 目的。 )

如果我没有指定ifindex,是否意味着应该忽略此选项?
谢谢,Renata如果您知道接口索引,您可以指定它。除非您正在尝试设置IPv6链路本地地址,否则不需要该索引。

如果您知道接口索引,可以指定它。除非您正在尝试设置IPv6链路本地地址,否则不需要此选项