将虚拟接口添加到本地子网后,对本地网络环境中的网络连接问题进行故障排除

问题描述 投票:0回答:1

作为研究网络堆栈的一部分,我正在本地网络中进行各种实验。这是关于其中一个的问题。

在本地网络中,我有两台设备,地址为

192.168.1.25
192.168.1.232
。我通过 SSH 从第一台设备连接到第二台设备(地址属于
wlo1
接口)。之后,在 tmux 会话中,我执行了命令:

sudo ip link add vvv_0 type dummy
ifconfig vvv_0 192.168.1.250

(此地址未分配给其他任何人)。

执行第二个命令后,与第二个设备的连接中断,一段时间后,SSH 会话自动结束,并显示

Broken pipe
消息。

尝试跑步时

ping 192.168.1.232

在第一台设备和命令上

sudo tcpdump icmp

第二次观察到以下情况: 在第一台设备上:

PING 192.168.1.232 (192.168.1.232): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
Request timeout for icmp_seq 3

在第二台设备上(数据包基本被捕获):

tcpdump: verbose output suppressed, use -v[v]... for full protocol decode
listening on wlo1, link-type EN10MB (Ethernet), snapshot length 262144 bytes
00:37:46.518117 IP MBP-Device > device-VivoBook-ASUSLaptop-X515JAB-X515JA: ICMP echo request, id 56678, seq 0, length 64
00:37:46.856042 IP MBP-Device > device-VivoBook-ASUSLaptop-X515JAB-X515JA: ICMP echo request, id 56678, seq 1, length 64
00:37:47.988090 IP MBP-Device > device-VivoBook-ASUSLaptop-X515JAB-X515JA: ICMP echo request, id 56678, seq 2, length 64
00:37:48.808157 IP MBP-Device > device-VivoBook-ASUSLaptop-X515JAB-X515JA: ICMP echo request, id 56678, seq 3, length 64

然后我直接在第二台设备上执行命令:

sudo ifconfig vvv_0 0.0.0.0

此后,我能够通过 SSH 从第一台设备重新连接到第二台设备。

第一台设备和第二台设备之间失去连接的原因可能是什么?

networking tcp ip tcpdump icmp
1个回答
0
投票

原因找到了。将

192.168.1.250/24
分配给
vvv_0
后,第二台设备上的路由表发生了更改。

ip route show
分配前输出:

default via 192.168.1.1 dev wlo1 proto dhcp metric 600 
169.254.0.0/16 dev virbr0 scope link metric 1000 linkdown 
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown 
192.168.1.0/24 dev wlo1 proto kernel scope link src 192.168.1.232 metric 600 
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown

之后:

default via 192.168.1.1 dev wlo1 proto dhcp metric 600 
169.254.0.0/16 dev virbr0 scope link metric 1000 linkdown 
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown 
192.168.1.0/24 dev vvv_0 proto kernel scope link src 192.168.1.250
192.168.1.0/24 dev wlo1 proto kernel scope link src 192.168.1.232 metric 600 
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown

因此,由于路由表,在

wlo1
上收到了 ICMP 回显请求数据包,并且通过
vvv_0
发送了 ICMP 回显应答数据包。

© www.soinside.com 2019 - 2024. All rights reserved.