我在网上现有的问题/答案中找不到我的问题的答案或解决方案,所以我不得不写下我的问题,希望有专家能发现这个问题。无论如何,就这样吧。
我有 2 台 Ubuntu 机器,配置为禁用 ipv4 并仅启用 IPv6。其中一台是 DUT,另一台是测试器。
DUT的配置:
auto lo
iface lo inet loopback
iface lo inet6 loopback
auto ens1f0.101
iface eth1.101 inet6 static
address fd53:7cb8:383:101::121
netmask 48
测试人员的配置:
auto lo
iface lo inet loopback
iface lo inet6 loopback
auto eth1.101
iface eth1.101 inet6 static
address fd53:7cb8:383:1ff::141
netmask 48
它们都通过非托管 L2 交换机连接,并且我没有禁用网络管理器(作为实用程序的附加信息)
现在,两个节点都可以通过 ping6 互相 ping 通,例如:
On Tester: ping6 -c 3 -I eth1.101 fd53:7cb8:383:101::121
On DUT: ping6 -c 3 -I ens1f0.101 fd53:7cb8:383:1ff::141
当我想用测试节点时iperf3
,它失败了,而且我知道两个节点上的防火墙都被禁用了。
在 DUT 上我使用以下命令启动 iperf3:
iperf3 -6 -s -p 7001 -B fd53:7cb8:383:101::121
在测试者身上:
iperf3 -6 -c fd53:7cb8:383:101::121 -p 7001 -u -B fd53:7cb8:383:1ff::141 -b 10M -t 1
在连接到 DUT 的 Wireshark 上,ens1f0
我可以看到来自测试仪的 TCP 数据包具有正确的 VLAN ID 设置,以及正确的目标地址和端口设置,客户端尝试与服务器建立连接,但服务器没有反应。
当我运行 netstat -ant 时,它会显示类似以下内容:
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN
tcp6 0 0 ::1:631 :::* LISTEN
tcp6 0 0 fd53:7cb8:383:101::7001 :::* LISTEN
但是当我在 Tester 上运行 nmap 来扫描 DUT 上的端口时,它没有返回任何内容:
sudo nmap -e eth1.101 -6 fd53:7cb8:383:101::121 -Pnr -p1-8000
给我:
Starting Nmap 7.60 ( https://nmap.org ) at 2018-11-23 13:01 CET
Nmap scan report for fd53:7cb8:383:101::121
Host is up (0.00031s latency).
All 8000 scanned ports on fd53:7cb8:383:101::121 are filtered
MAC Address: A0:36:9F:04:36:44 (Intel Corporate)
Nmap done: 1 IP address (1 host up) scanned in 174.62 seconds
现在我不知道这里出了什么问题。但我一直在关注 netstat 报告,报告说本地地址f"d53:7cb8:383:101::7001"
正在监听,但我的测试机器前缀是fd53:7cb8:383:1ff
。这可能是原因吗?因为当我将测试仪地址更改为时, 它可以与和等一起fd53:7cb8:383:101::xxx
使用。iperf
Nmap
这意味着我认为两个节点fd53:7cb8:383:101::121
和fd53:7cb8:383:1ff::141
网络掩码为 48 应该能够找到对方并进行通信....它们确实如此..Ping 工作正常并且 TCP 数据包到达,但这些 TCP 数据包没有得到答复,并且 NMAP 说所有端口都被过滤了,即使我知道防火墙已被禁用。
我希望有人知道这个问题的答案。
谢谢你Mtin