Невозможно выполнить пинг между интерфейсами на одном устройстве в одной сети

Невозможно выполнить пинг между интерфейсами на одном устройстве в одной сети

В сети А есть устройство, назовем его 1.

Устройство 1 имеет два интерфейса: eth5 и eth7.

В сети A есть устройство 2.

Пинг с eth5 на устройство 2 работает

Пинг с eth7 на устройство 2 работает

Устройство 2 может пинговать eth5 и eth7

НО пинг с eth5 на eth7 и наоборот не работает.

[root@ipfrmk /]# ping -I eth5 192.168.10.42
PING 192.168.10.42 (192.168.10.42) from 192.168.10.43 eth5: 56(84) bytes of data.
^C
--- 192.168.10.42 ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 2006ms

и

[root@ipfrmk /]# ping -I eth7 192.168.10.43
PING 192.168.10.43 (192.168.10.43) from 192.168.10.42 eth7: 56(84) bytes of data.
^C
--- 192.168.10.43 ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 1999ms

Почему я не могу выполнить ping между двумя интерфейсами, которые оба находятся на устройстве 1 и оба подключены к сети A?

Я могу пинговать другие устройства в сети A, но не могу пинговать соответствующие интерфейсы.

Возможно, статический маршрут для каждого интерфейса?

Я попробовал следующую команду, но безуспешно.

ip route add 192.168.0.0/16 via 192.168.10.42 dev eth5

Выход

[root@ipfrmk /]# ping -I eth5 192.168.10.42
PING 192.168.10.42 (192.168.10.42) from 192.168.10.43 eth5: 56(84) bytes of data.
From 192.168.10.43 icmp_seq=1 Destination Host Unreachable
From 192.168.10.43 icmp_seq=2 Destination Host Unreachable
From 192.168.10.43 icmp_seq=3 Destination Host Unreachable
^C
--- 192.168.10.42 ping statistics ---
6 packets transmitted, 0 received, +3 errors, 100% packet loss, time 5002ms
pipe 3

Должно же быть что-то, что я упускаю?

[root@ipfrmk /]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.0.0.0       0.0.0.0         255.0.0.0       U     0      0        0 eth5
192.0.0.0       0.0.0.0         255.0.0.0       U     0      0        0 eth7
192.168.0.0     192.168.10.42   255.255.0.0     UG    0      0        0 eth5

решение1

В этой ситуации я рекомендую использовать IP-адрес, привязанный к интерфейсу, с которого вы хотите отправлять данные, а не сам интерфейс (для вашей конфигурации).

ping -I <ens5 IP address> <ens7 IP address>

Причина, по которой ping не работает должным образом, заключается в том, что IP-адрес назначения результирующей датаграммы IPv4 совпадает с адресом интерфейса, переданного ping, а не с заданным целевым IP-адресом.

Моя конфигурация:

2: ens5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
     link/ether 52:54:00:e0:cc:50 brd ff:ff:ff:ff:ff:ff
     inet 192.168.122.10/24 brd 192.168.122.255 scope global ens5

3: ens6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 
     link/ether 52:54:00:cd:c9:91 brd ff:ff:ff:ff:ff:ff
     inet 192.168.122.20/24 brd 192.168.122.255 scope global ens6
        
     

Кажется, это должно работать, но не работает:

root@debian:/home/morgan# ping -c 1 -I ens5 192.168.122.20
PING 192.168.122.20 (192.168.122.20) from 192.168.122.10 ens5: 56(84) bytes of data.

--- 192.168.122.20 ping statistics ---
1 packets transmitted, 0 received, 100% packet loss, time 1ms

Вывод tcpdump показывает, почему это не работает....

IP-адрес назначения — это адрес интерфейса ens5, а не ожидаемый целевой IP (192.168.122.20), переданный в ping.

18:36:17.982917 IP 192.168.122.10 > 192.168.122.10: ICMP host 192.168.122.20 unreachable, length 92

Когда я использую IP-адрес ens5, пинг работает:

root@debian:/home/morgan# ping -c 1 -I 192.168.122.10 192.168.122.20                                                                                                   
PING 192.168.122.20 (192.168.122.20) from 192.168.122.10 : 56(84) bytes of data.                                                                                       
64 bytes from 192.168.122.20: icmp_seq=1 ttl=64 time=5.17 ms                                                                                                           
                                                                                                                                                                   
--- 192.168.122.20 ping statistics ---                                                                                                                                 
1 packets transmitted, 1 received, 0% packet loss, time 2ms                                                                                                            
rtt min/avg/max/mdev = 5.165/5.165/5.165/0.000 ms                                                                                                                      

решение2

Я могу ошибаться... Но это крутой поворот? Он может не дотянуться до себя таким образом. Иногда он не может выйти и вернуться в том же интерфейсе, как этот.

Связанный контент