Score:0

Can't Bind to IPv4 Addresses on certain ports after Hirsute upgrade

vn flag

After a hirsute upgrade, I found that my DNS and HTTP services were no longer working, though most everything else was. The error is Connection Refused. The processes are running successfully, in docker, but it seems as if the port bind is silently failing.

lsof reports that the ports are in use and listening. I've verified by connecting to the internal Docker IPs that the upstream services are running.

The most confusing thing is that this is only a problem for certain ports, and for IPv4 addresses. I bound a netcat listener via netcat -l -p 80 and was unable to connect to it, either from the same machine or over the network. However, when I listen to port 81 using the same command, I can connect locally or over the network.

Another thing I tried was installing NGINX to the system, to rule out the possibility of Docker problems. However, despite lsof reporting that NGINX had bound port 80 on all addresses IPv4 and IPv6, it could only be connected to via the IPv6 loopback - 127.0.0.1 still had connection refused.

That is, this problem applies only when:

  • Binding to very specific low ports (53, 80, 443).
  • Binding to IPv4 addresses.

ufw is disabled. iptables doesn't have anything I can see that would interfere (and even then, connection refused?). I've rebooted a few times. I'm out of ideas, so anything worth investigating is appreciated.

mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.