Хозяева Linux не могут общаться, если они не пинговали друг друга

Итак, у меня есть что-то странное, чего я никогда раньше не видел, и это немного сложно описать.

Скажем, у меня 2 сервера.

Сервер A: 192.168.1.5, сервер B: 192.168.1.21

Эти два сервера находятся в одной и той же подсети и могут быстро откликнуться в Интернет. Они также могут пинговать серверы в других подсетях просто отлично. Они также могут пинговать хост Windows в той же подсети.

Но что произойдет, если обе хосты работают под управлением Linux (скажем, сервер Ubuntu или CentOS 7, или смесь двух – просто обе машины, на которых работает Linix).

Если сервер A ping Server B – No Response.

Если сервер B ping Server A – нет ответа.

Если сервер A и сервер B одновременно пинговать друг друга – он начинает отвечать до тех пор, пока не будет перезагружен, а затем я вернусь к той же проблеме. Он будет пропускать трафик взад и вперед весь день, пока один из хостов не перезагрузится.

Это отличное временное решение, если у вас есть два или три сервера. Но в моей сети работает более 80 серверов, и это действительно раздражает, что нужно делать это для каждого хоста в сети при каждом перезагрузке.

Как я могу исправить что-то вроде этого?

Хотя он действительно смотрит, что проблема связана с ARP, и ответ Эдуардо имеет некоторую ценность как диагностику и обходной путь, это не РЕШЕНИЕ.

К сожалению, у меня нет решения – это очень странная проблема.

если бы это была моя сеть, я бы очень сильно смотрел на любые коммутаторы в сети, проверяя дублированные IP-адреса, а также используя wirehark с сетевыми адаптерами в беспорядочном режиме, чтобы определить, возникла ли проблема на любом из хостов или в другом месте на сеть.

Попробуйте вручную создать запись ARP на каждом сервере, указывая на другую.

На сервере A:

 arp -s <B-Server's ip> <B-Server's MAC> arp -s 192.168.1.21 01:23:45:67:89:AB 

На сервере B:

 arp -s <A-Server's ip> <A-Server's MAC> arp -s 192.168.1.5 AB:89:67:45:23:01 

Замените указанные выше MAC-адреса.