Я пытаюсь подключиться к порту 25 с netcat с одной виртуальной машины на другую, но это говорит мне, no route to host
хотя я могу пинговать. Моя политика брандмауэра по умолчанию настроена на удаление, но у меня есть исключение для приема трафика для порта 25 в этой конкретной подсети. Я могу подключиться с VM 3 к VM 2 через порт 25 с nc, но не с VM 2 TO 3.
Вот предварительный просмотр моих правил брандмауэра для VM2
Вот предварительный просмотр моих правил брандмауэра для VM 3
Когда я показываю сервисы прослушивания, которые у меня есть, *:25
это означает, что он прослушивает все IP-адреса ipv4 и :::25
ipv6. Я не понимаю, где ошибка и почему не работает оба правила брандмауэра принимают трафик через порт 25, поэтому он должен подключаться. Я попытался сравнить различия между обоими, чтобы понять, почему я могу подключиться с VM3 к VM2, но конфигурация все та же. Любые предложения о том, в чем может быть проблема?
Обновление, останавливающее службу iptable, решает проблему, но мне все еще нужны эти правила.
Ответы:
То
no route to host
, что машина в состоянии пинговать, является признаком брандмауэра, который вежливо запрещает вам доступ (т. Е. С помощью сообщения ICMP, а не просто DROP-ping).Видишь твои
REJECT
строки? Они соответствуют описанию (REJECT with ICMP xxx). Проблема в том, что эти, казалось бы, (#) универсальные строки REJECT находятся в середине ваших правил, поэтому следующие правила не будут выполняться вообще. (#) Трудно сказать, являются ли эти строки общими для всех, выводiptables -nvL
будет предпочтительнее.Положите эти правила REJECT в конце, и все должно работать, как ожидалось.
источник