This is a really weird problem that I can’t seem to track down further. Perhaps a creative person could suggest some test ideas. Here are the facts:
- Firefox “Unable to connect” to my LAN server (a router) at 192.168.0.2 port 80.
- Network error is specifically “NS_CONNECTION_REFUSED”.
- Wireshark on a Raspberry Pi placed between the laptop and server shows no packets exchanged trying to connect. Any packet containing 192.168.0.2, any port.
- Chrome and Safari work just fine on the same machine. I can see the packets in Wireshark. This validates my test setup works.
- Curl works, loads the web page. I can see the packets.
- I have reinstalled, refreshed, removed all extensions, cleared all history and cookies in Firefox and still cannot load the page.
- Firefox in Safe Mode cannot load the page.
- Disabled DNS over HTTPS, made sure No Proxy is selected in network settings. Still cannot load the page.
- Disabled IPv6 in Firefox with about:config setting. Still fails.
- I have no security software installed of any kind on this Mac. No antivirus or firewall except the default OS one.
- Turned off Mac built-in Firewall. Still unable to connect.
Why is Firefox apparently refusing to connect to my server? Other LAN IP addresses work fine, even local ones. It specifically hates this one.
I once had a similar issue (but not fully the same), alas I forgot how I fixed it.
Some suggestions:
Percussive maintenance? ;-)
Hope you get it resolved.
You are a god. For mysterious reasons, having this IP in my hosts file breaks loading the page. Removing it from hosts restores access. I have no idea why Firefox would care about this because I’m not trying to access the page by name, but by IP address. My best guess is there’s some sort of bug relating to handling of hosts file entries.
I found this answer, but I still don’t understand what’s going on and why this network.trr.exclude-etc-hosts might be useful.