一、link-local addr使用方式
1、 连接同一广播域内的其他主机的link-local addr或者本机的link-local addr,必须绑定本机的link-local addr,否则连接失败(syn包都发不出去);
2、连接同一广播域内的其他主机的link-local addr时,scope id(ipv6%地址后面的内容)必须都要填写本机地址的scope id,否则connect失败(真正发送到网络上的包是不包含scope id的, scope id标识数据出口网卡)
本机地址:fe80::73d2:59:8c52:586e%15,作为客户端

对端地址:fe80::d9cf:27f:6a87:7fae%15,作为服务器

代码:
Connect("fe80::d9cf:27f:6a87:7fae%15", 9090, false, "fe80::73d2:59:8c52:586e%15", 0);
抓包:

分析:
对端的真实link_local addr:fe80::d9cf:27f:6a87:7fae%11,客户端连接时,使用此地址连接失败。必须使用fe80::d9cf:27f:6a87:7fae%15,才能连接成功。
文章讲述了在IPv6环境中,如何正确使用link-localaddr进行设备间通信,强调了本地地址与scopeid的重要性,以及连接失败案例中的具体分析。
3151

被折叠的 条评论
为什么被折叠?



