(ETA-NB) Before attempting the below, try what I just tried which is
sudo systemctl stop systemd-resolved.service
This stops the local BIND server and name resolution requests get delegated to the configured local (DHCP-supplied) DNS service.
I don’t know why Fedora is configured for DNS requests out of the box like it is; I have problems resolving local addresses but only with Fedora (not Windows or Mac or Debian and other Linux distros).
Without knowing anything about your network topology other than you’re using cable internet (like a home setup perhaps, like my LAN perhaps) and the address you’re attempting to reach - whether it’s local or it’s only reachable outside your local router - you could try this which I’ve had to do to on at least 2 Fedora installations to get some amount of local host name resolution working on Fedora:
Also note this is temporary - the configuration will return to default after a reboot. I haven’t yet figured out how to make it more permanent.
sudo unlink /etc/resolv.conf
sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
sudo systemctl restart systemd-resolved.service
It would be interesting to know what you get back when you try to resolve the hostname you’re attempting to connect to via dig <hostname> before and after the mod. Also I’m assuming that /etc/resolv.conf is initially symlink’d to /run/systemd/resolve/stub-resolv.conf
On my machine(s), the resolver on Fedora wants to channel everything to it’s local BIND server at 127.0.0.53. This knows about /etc/hosts and maybe other methods of name resolution, but I’m not aware of them. What we need to do, at least short term, is stop 127.0.0.53 getting in on the act and instead routing the name resolution request to the configured DNS address, i.e. the one supplied by your router/DHCP when you boot up.
It looks to me like Fedora relies on LLMNR (Link Local Multicast Name Resolution) to register and potentially resolve (that part doesn’t seem to work) local host names too.
In the worst case situation, back out the changes that I suggested above and create an entry in your hosts file for the host you’re trying to reach. It’s as simple as a line containing:
<hostname><whitespace><ip address>
e.g.
host-i-m-trying-to-reach 10.10.1.2 # <ipv4-address>
or e.g.
host-i-m-trying-to-reach ffff:1234:5678::1 # <ipv6-address>
Good luck and let us know if you made any progress or are still having difficulty.
ETA: The obvious problem with putting IP addresses in hosts file that are dynamic or otherwise subject to change is that they become stale and you could end up connecting to a server you didn’t intend to, with potential for security issues. Modifying /etc/hosts should only be seen as a temporary solution to get you around name resolution problems.