Ping funcionando apenas em uma direção

Ping funcionando apenas em uma direção

Eu tenho um pequeno cluster rodando centos 7 composto pelas máquinas A, B e C. Todas são máquinas físicas separadas conectadas na mesma LAN.

A máquina A pode executar ping em B e C. A máquina B pode executar ping em A e C. No entanto, a máquina C só pode executar ping na máquina A.

Meu problema é que a máquina C não consegue executar ping na máquina B. Diz Host de destino inacessível.

Já tentei trocar o switch de rede, trocar a Ethernet, desabilitar firewalls e SELinux em todas as máquinas e ainda assim o problema persiste. Também verifiquei o endereço IP e o arquivo /etc/hosts para garantir que todos sejam consistentes.

Estou me perguntando o que poderia tentar para ajudar a diagnosticar a causa desse problema.

Obrigado !

Responder1

Você está executando ping por nome de máquina ou por endereço IP, ou é o mesmo nos dois sentidos?

Alguma dessas máquinas está realizando roteamento (várias NICs)?

Presumo que quando você diz que eles estão na mesma LAN, você quer dizer que cada máquina está usando umum e somente umplaca de rede conectada ao mesmo switch e que não há roteadores entre eles. Também presumo que eles estejam na mesma sub-rede IP lógica. Se isso estiver incorreto, forneça mais detalhes na pergunta. Tenho motivos para acreditar que essas suposições não são 100% corretas.

Coisas para tentar:

  • Faça ping por endereço IP primeiro. Isso eliminará problemas de resolução de nomes. Se isso for bem-sucedido, provavelmente você terá um problema de resolução de nomes (como um servidor DNS discordando do arquivo hosts).
  • Verifique a máscara de sub-rede da sua interface em cada máquina. Se não corresponderem, isso pode acontecer em algumas circunstâncias.
  • Verifique se há vários gateways. A máquina C pode ter mais de uma definida. Isso não deve ser um problema se eles estiverem na mesma sub-rede IP. A mensagemHost de destino inacessívelimplica que ele sabe o endereço do que está tentando fazer ping, mas parece que não consegue chegar lá com as rotas definidas.

Ajudaria se você pudesse fornecer sua tabela de roteamento para cada máquina, o que normalmente é feito no route -nLinux.

Responder2

Quando você diz "Diz Host de destino inacessível", qual é o endereço IP do dispositivo que relata isso? O que quero dizer é que na saída do ping você obtém algo como:

De xxxx icmp_seq=2 Host de destino inacessível

Então, qual é o xxxx nessa saída? Provavelmente é o endereço IP do próprio C, mas vale a pena verificar.

Se for o endereço do próprio C, isso normalmente significa que ele não possui B em sua tabela ARP e não está obtendo resposta a uma solicitação ARP. Para confirmar, verifique a saída de "arp -a" (enquanto o ping está em execução, ou imediatamente após interromper o ping), mostra uma linha com o endereço IP de B e seu endereço MAC, uma linha com o IP de B e " incompleto" ou nenhuma linha com o IP de B?

O que também pode ajudar é executar uma captura de pacotes usando, por exemplo, tcpdump ou wireshark para ver o que realmente está ocorrendo na rede quando você executa o ping. Pode ser ainda mais útil obter 2 capturas em B e C ao mesmo tempo.

informação relacionada