No se puede hacer ping entre interfaces en un dispositivo en la misma red

No se puede hacer ping entre interfaces en un dispositivo en la misma red

Hay un dispositivo, llamémoslo 1, en la red A

El dispositivo 1 tiene dos interfaces, eth5 y eth7

Hay un dispositivo 2 en la red A

Hacer ping desde eth5 al dispositivo 2 funciona

Hacer ping desde eth7 al dispositivo 2 funciona

El dispositivo 2 puede hacer ping a eth5 y eth7

PERO, hacer ping de eth5 a eth7 y viceversa no funciona.

[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

y

[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

¿Por qué no puedo hacer ping entre las dos interfaces que están en el dispositivo 1 y que están conectadas a la red A?

Puedo hacer ping a otros dispositivos en la red A pero no puedo hacer ping a las interfaces respectivamente.

¿Quizás una ruta estática para cada interfaz?

Probé el siguiente comando sin suerte.

ip route add 192.168.0.0/16 via 192.168.10.42 dev eth5

Producción

[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

¿Tiene que haber algo que me falta?

[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

Respuesta1

En esta situación, recomiendo usar la dirección IP vinculada a la interfaz desde la que desea enviar, en lugar de la interfaz en sí (para su configuración).

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

La razón por la que el ping no funciona como se esperaba es que la dirección IP de destino del datagrama IPv4 resultante es la de la interfaz pasada al ping, en lugar de la dirección IP de destino dada.

Mi configuración:

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
        
     

Parece que debería funcionar, pero no funciona:

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

La salida de tcpdump muestra por qué no funciona....

La dirección IP de destino es la de la interfaz ens5, en lugar de la IP de destino esperada (192.168.122.20) pasada al ping.

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

Cuando uso la dirección IP de ens5, el ping funciona:

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                                                                                                                      

Respuesta2

Podría estar equivocado... ¿Pero se trata de una curva cerrada? Es posible que no pueda volver a sí mismo de esa manera. A veces no puede salir y regresar a la misma interfaz de esa manera.

información relacionada