【发布时间】:2021-06-14 21:21:37
【问题描述】:
创建 TCP6 套接字并连接到服务器时,为套接字选择的本地地址不在主机的任何接口上。为什么会有差异?
在下面的例子中,主机的 eth0 IPV6 地址是 fe80::10ff:36ff:fef5:611d。由于客户端是从 fe80::10ff:36ff:fef5:611d%eth0 连接的,我希望套接字的本地地址是相同的。但是 netstat 显示它是 fe80::10ff:36ff:f。
$ nc -l6v :: 10023
Listening on :: 10023
Connection received on fe80::10ff:36ff:fef5:611d%eth0 37402
$ nc -v fe80::10ff:36ff:fef5:611d%eth0 10023
Connection to fe80::10ff:36ff:fef5:611d%eth0 10023 port [tcp/*] succeeded!
$ netstat -6tn
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp6 0 0 fe80::10ff:36ff:f:37402 fe80::10ff:36ff:f:10023 ESTABLISHED
tcp6 0 0 fe80::10ff:36ff:f:10023 fe80::10ff:36ff:f:37402 ESTABLISHED
【问题讨论】:
标签: ipv6