LINUX.ORG.RU
ФорумAdmin

Абсурдный «No route to host»

 , ,


0

1

Здравствуйте, дорогие коллеги!
Как говорится, прошу прощения за беспокойство, но вот случился у меня такой казус и хотелось бы узнать, что вы об этом думаете :)
Есть две машинки, называются scilla и haribda. Это виртуалки с CentOS на VirtualBox'е. Сетевые адаптеры у них в host-only networking'е в одной подсети 192.168.3.0/24.
Друг друга отлично видят, взаимно пингуются, ходят по ssh одна на другую, всё здорово.
Теперь: поднял на обеих виртуалках Apache/httpd, он висит на порту 80 вот таким нехитрым образом (haribda для примера):

[root@haribda cluster]# lsof -iTCP:80 -sTCP:LISTEN
COMMAND  PID   USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
httpd   1586   root    3u  IPv4 2447054      0t0  TCP *:http (LISTEN)
httpd   1588 apache    3u  IPv4 2447054      0t0  TCP *:http (LISTEN)
httpd   1589 apache    3u  IPv4 2447054      0t0  TCP *:http (LISTEN)
httpd   1590 apache    3u  IPv4 2447054      0t0  TCP *:http (LISTEN)
httpd   1591 apache    3u  IPv4 2447054      0t0  TCP *:http (LISTEN)
httpd   1592 apache    3u  IPv4 2447054      0t0  TCP *:http (LISTEN)
httpd   1593 apache    3u  IPv4 2447054      0t0  TCP *:http (LISTEN)
httpd   1594 apache    3u  IPv4 2447054      0t0  TCP *:http (LISTEN)
httpd   1595 apache    3u  IPv4 2447054      0t0  TCP *:http (LISTEN)
Теперь со scilla идём на 80-й порт haribda и видим абсурдную вещь:
[root@scilla cluster]# telnet haribda 80
Trying 192.168.3.4...
telnet: connect to address 192.168.3.4: No route to host
И это при том, что:
[root@scilla cluster]# telnet haribda 22
Trying 192.168.3.4...
Connected to haribda.
Escape character is '^]'.
SSH-2.0-OpenSSH_5.3

Э... Мне трудно сформулировать вопрос иначе как с использованием английского ругательного слова, но... я вынужден признать, что проработав 8 лет системным администратором я всё-таки слегка обескуражен и вынужден спросить:
ЧТО ЭТО?! И как такое вообще может быть?
P.S. SELinux (it's a shit that break things, you know) - отключен

★★★★★

Последнее исправление: DRVTiny (всего исправлений: 2)

вынужден признать, что проработав 8 лет системным администратором

...так и не научился пользоваться tcpdump

anonymous
()

попробуй strace

anonymous
()

в центоси по-умолчанию иптаблес реджектит всё кроме ssh

anonymous
()

Интересно, а как виртбокс управляет этими сетевыми host-only?
Ну и policy-routing отключен, да?

trofk ★★★
()

Смотрите правила фаерволла, man iptables.

Таргетом REJECT легко задается любой ICMP ответ по заданным правилам. В т.ч. и --reject-with icmp-host-unreachable и icmp-net-unreachable...

Запросто делаем:

iptables -I INPUT -p tcp --dport 80 -j REJECT --reject-with icmp-net-unreachable

И вам будет отвечать даже: telnet: connect to address 127.0.0.1: Network is unreachable

nstorm
()
Последнее исправление: nstorm (всего исправлений: 2)
Ответ на: комментарий от trofk

Да, из-за ответа ICMP. Да, верит конечно (чтобы не верило, на клиенте можно фильтровать определенные ответы ICMP).

Смотрите man iptables, про цель REJECT - там написано какие могут быть ответы ICMP. Ну и в общих чертах про ICMP смотрите.

nstorm
()
Ответ на: комментарий от anonymous

Блин, эти нехорошие люди за каким-то лешим настраивают пакетный фильтр. Я уже настолько от этого отвык, что даже не стал проверять :(

DRVTiny ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Я забыл просто о том, что есть дистрибутивы, в которых некие нетрадиционной ориентации люди настраивают «дефолтный фаерволл», который ещё и отключать нужно в «лучших» традициях офтопика.

DRVTiny ★★★★★
() автор топика
Ответ на: комментарий от nstorm

Именно так там и было:

REJECT     all  --  anywhere             anywhere            reject-with icmp-host-prohibited

Уфф... Нда. Спасибо всем за помощь! :)

DRVTiny ★★★★★
() автор топика
Ответ на: комментарий от DRVTiny

Отключать его ненужно, нужно скопировать строку с цыфиркой 22 и полученной строке заменить 22 на 80, а потом применить новые правила. А если вы доверяете прямо все сервисы на каком-то интерфейсе, то надо скопировать строку с буквами lo и в полученной новой строке заменить lo на имя интерфейса, куда ваша доверенная сеть включена. А вы небось и селинукс отключаете, да?

anonymous
()
Ответ на: комментарий от anonymous

Какая нахрен циферка, вы вообще о чём? Это виртуалки для тестовой среды на локалхосте, какой нафиг фаерволл, какой селинукс? Давайте ещё вспомним о том, что в Linux в отличие от Solaris и даже офтопика напрочь отсутствует сколько-нибудь вменяемый RBAC, интеграция PAM с LDAP делается для каждого дистрибутива своим «индивидуальным способом» через Ж, а о каких-то благих начинаниях наподобие того же NIS'а все забыли ещё 20 лет назад.

DRVTiny ★★★★★
() автор топика
Ответ на: комментарий от DRVTiny

для тестовой среды на локалхосте

а после вы эту тестовую среду перенесёте в продакшен, который либо не будет работать, либо будет дыряв

вменяемый RBAC

про selinux не слыхал

интеграция PAM с LDAP

про sssd не слыхал

наподобие того же NIS'а

к счастью, оно сдохло

да вы такой же болтун, как и посоветовавший вам отключить реджект регистрант

anonymous
()

вынужден признать, что проработав 8 лет системным администратором я всё-таки слегка обескуражен и вынужден спросить: ЧТО ЭТО?! И как такое вообще может быть?

facepalm... Даже такой быдлокодер как я может навскидку назвать несколько очевидных причин. Для начала показывай ip a, ip r и iptables-save И там и там.

проработав 8 лет системным администратором

хорошо, что я не твой пользователь...

emulek
()
Ответ на: комментарий от DRVTiny

в которых некие нетрадиционной ориентации люди настраивают «дефолтный фаерволл», который ещё и отключать нужно в «лучших» традициях офтопика.

а чем ты думал, когда ставил Ъ ынтерпрайз RHEL, да ещё и нищеброд-едишен?

emulek
()
Ответ на: комментарий от emulek

вообще-то шестёрка у шапки нифига не сложнее слаквари, а центось ещё и качественнее саентифика с оригинала слизана, так что тут дело только в межушном ганглии ТСа

anonymous
()
Ответ на: комментарий от DRVTiny

Какая нахрен циферка, вы вообще о чём?

зачем везде свою. голую жопу светить?

Это виртуалки для тестовой среды на локалхосте

чисто на поприкалываться, или для дела? Если для дела, то ты так и перетащишь её в продакшен. Вместе со всеми своими зияющими дырами.

какой нафиг фаерволл, какой селинукс? Давайте ещё вспомним о том, что в Linux в отличие от Solaris и даже офтопика напрочь отсутствует сколько-нибудь вменяемый RBAC, интеграция PAM с LDAP делается для каждого дистрибутива своим «индивидуальным способом» через Ж, а о каких-то благих начинаниях наподобие того же NIS'а все забыли ещё 20 лет назад.

это всё благодаря таким как ты.

emulek
()
Ответ на: комментарий от emulek

Даже такой быдлокодер как я может навскидку назвать несколько очевидных причин

С моей точки зрения то, что система, в которой мне не нужен пакетный фильтр и в которой я не настраивал пакетный фильтр, даже таблицу нат не трогал, режектит что бы то ни было, да ещё таким извращённым методом - это ВЕСЬМА неочевидно. Да,я в общем уже даненько не имел дела с полноценной установкой RH-подобных (не OpenVZ-template'ами), да и сетевая конфигурация у меня «виртуальная», так что о таком «подарке» от RedHat как «любезно» настроенный ими за меня фаерволл я мог подумать лишь в последнюю очередь.

DRVTiny ★★★★★
() автор топика
Ответ на: комментарий от anonymous

вообще-то шестёрка у шапки нифига не сложнее слаквари, а центось ещё и качественнее саентифика с оригинала слизана, так что тут дело только в межушном ганглии ТСа

не, посложнее будет. В слаке например фаервол тупо отключён. Потому его надо включать и настраивать. А в CentOS он уже настроен и отлично работает, просто надо чуть подпилить. Потому слака сложнее и не слишком годна в продакшен — пилить много надо.

emulek
()
Ответ на: комментарий от DRVTiny

С моей точки зрения то, что система, в которой мне не нужен пакетный фильтр и в которой я не настраивал пакетный фильтр, даже таблицу нат не трогал, режектит что бы то ни было, да ещё таким извращённым методом - это ВЕСЬМА неочевидно.

я знаю. Это RedHat. Система годная, но только для тех, кто осилил документацию. А ты — не осилил, увы.

так что о таком «подарке» от RedHat как «любезно» настроенный ими за меня фаерволл я мог подумать лишь в последнюю очередь.

могу тебя расстроить: это не последний сюрприз. Там ещё много будет.

emulek
()
Ответ на: комментарий от emulek

Там ещё много будет.

Да я в курсе. Трабл был в том, что вокруг меня одни Debian'ы с Ubunt'ами и если не переключаться вовремя на RedHat-специфику, можно таких вот граблей огрести. Лучше б они gluster сделали чуть менее глючной, sssd - чуть более работоспособным, а btrfs объективно восстановимой :)

DRVTiny ★★★★★
() автор топика
Ответ на: комментарий от DRVTiny

Трабл был в том, что вокруг меня одни Debian'ы с Ubunt'ами и если не переключаться вовремя на RedHat-специфику, можно таких вот граблей огрести.

Если вы знаете Debian, вы знаете только Debian...

emulek
()
Ответ на: комментарий от DRVTiny

Sssd в ред хатах работы способен на 110%, btrfs пилит оракл - заклятый друг редхата, а кое-кому не помешает подтянуть системный подход при диагностике отказов

no-dashi ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.