我正在尝试创建一个 BSD 套接字来侦听来自特定 IPv6 多播地址的消息。我目前创建侦听正确地址 0::0 的套接字没有问题。
问题是我在具有多个 NIC 的小型嵌入式 linux 服务器上运行;这里 ipv6_mreq 的 ipv6mr_interface 字段很重要。通过反复试验,我确定 0、1 和 3 不起作用,但 2 起作用(它将所有 IPv6 多播消息发送到我的地址 ff05::3,到达正确的接口)。
我的问题是:在 linux 中,我如何将我的接口、我知道的谁的地址与正确的接口号相关联?