После сложного обновления я обнаружил, что мои службы DNS и HTTP больше не работают, хотя почти все остальное работало. Ошибка В соединении отказано
. Процессы работают успешно в докере, но кажется, что привязка порта молча терпит неудачу.
lsof сообщает, что порты используются и прослушиваются. Я проверил, подключившись к внутренним IP-адресам Docker, на которых работают вышестоящие службы.
Больше всего сбивает с толку то, что это проблема только для определенных портов и для IPv4-адресов. Я связал прослушиватель netcat через netcat -l -p 80
и не смог подключиться к нему ни с того же компьютера, ни по сети. Однако, когда я слушаю порт 81
используя ту же команду, я может подключаться локально или по сети.
Еще я попытался установить NGINX в систему, чтобы исключить возможность проблем с Docker.Однако, несмотря на то, что lsof сообщил, что NGINX привязал порт 80 ко всем адресам IPv4 и IPv6, к нему можно было подключиться только через петлю IPv6 — 127.0.0.1 все еще имел отказ в соединении.
То есть эта проблема актуальна только тогда, когда:
- Привязка к очень специфический низкие порты (53, 80, 443).
- Привязка к IPv4-адресам.
уф отключен. Я не вижу в iptables ничего, что могло бы помешать (и даже тогда соединение было отклонено?). Я несколько раз перезагружался. У меня нет идей, поэтому все, что стоит исследовать, приветствуется.