ID:182075
 
I recently reinstalled Linux on my computer. I'd hosed my old Fedora 7 install, and was upgrading to Fedora 10. It was a clean install, rather than an 'upgrade' or whatever it calls it.

Anyway, I've got some weird network issues. Hostnames on my local network resolve fine (For example 'uberwald' is our server, and resolves to 10.0.0.1), but anything past that doesn't work (E.g., www.google.com). The funniest thing is that the 'ping' program resolves fine (So I can ping www.google.com, but I can't traceroute to it, nor can I firefox to it). If I stick an IP address into Firefox, that works fine, too.

resolv.conf just has the line 'nameserver=10.0.1.138' in it, which is correct. It's not a nameserver issue - I'm currently logged into the windows partition, which resolves fine.

This is possibly connected to some issues I was having with the NetworkManager applet (Which I've uninstalled, and removed the service for) and the network-config program, which I had to update because I was having a weird issue - it wouldn't let me set the subnet mask, not even manually via the command-line.

My computer has two interfaces, and the one that's currently plugged in is eth1. I haven't tried using the interface Linux has designated as eth0 - could it be an issue with DNS attempting to go through the wrong interface?

The routing table that's output by route also seems to be correct - 10.0.0.0/24 goes direct via eth1, and the default goes via 10.0.0.1 via eth1 (10.0.0.1 is my default gateway).

Any ideas?
Jp wrote:
Any ideas?

Post this same thing on the Fedora forums, or on Freenode ##linux or Freenode #fedora. Basically, somewhere that people who like to debug your Fedora problems hang out.

Or, you know, post on the website of some Windows-only Anime game platform.
How does nslookup google.com and nslookup google.com 10.0.1.138 compare?
In response to Stephen001
Exactly the same output.

I tried whipping up a quick program to test if differences between gethostbyname() and getaddrinfo() were to blame, but both are giving me a 'host not found'-style error message. I may have done it wrong or that might not be the issue.

How does DNS resolution work in Linux, precisely? Could you direct me to a guide? All I've been able to find are guides on setting up a DNS server.
In response to PirateHead
PirateHead wrote:
Anime game platform.

Seriously, if you hate BYOND so much, why are you still here?
In response to Jp
Unfortunately all the DNS stuff I know of on the internet explains how to set up BIND servers. DNS without NetworkManager goes a little bit like this:

Check /etc/host.conf, if order hots,bind, check /etc/hosts for a suitable entry. If /etc/hosts doesn't have one, fetch DNS server from /etc/resolv.conf and send query.

You may want to echo "order bind,hosts" > /etc/host.conf and see whether that changes things.
In response to Stephen001
I'm posting this from a fresh install of FC10.

The issue, it turns out, is this: https://bugzilla.redhat.com/show_bug.cgi?id=459756

To put it simply, it seems that gethostbyaddr() is sending IPv4 and IPv6 DNS queries for every DNS request, on the same port. Combined with some NAT (that's what I've got) and load-balancing setups, you can lose the IPv4 response, and if you're only configured for IPv4, your programs don't work.

Firefox lets you explicitly disable IPv6 - that's how I'm posting. Other stuff is not so enlightened, so it looks like I'll have to look into one of the workarounds - like this one.

Apparently there's a version of glibc out there that fixes the bug in question, but it's a bit tricky to update it without yum. Anyone know how to make yum run as IPv4 only?
In response to PirateHead
PirateHead wrote:
Or, you know, post on the website of some Windows-only Anime game platform.

I laughed, only because BYOND's largest advocate of free/open-source software protested a Linux topic. Heh.
In response to Kuraudo
Note that I pointed to more helpful resources. I wasn't protesting.

I spend a decent amount of time helping people in Linux chatrooms, forums, etc, and I go to those same places for help because there's a lot that I don't know. There are great resources out there for programming languages, libraries, operating systems, networking help, hardware help, car trouble, everything... but this is none of those except a support place for the BYOND software suite, and I feel like people are cheating themselves by thinking that they stand the best chance at getting help with other things here.

Part of this is why OpenID login for forums is so important, but I've brought this up with the BYOND administrators and it's been rebuffed. I think it will still take a few years before OpenID and forums become a common enough combination that it becomes universally useful but it will take convincing a lot of individual forum administrators in the meantime, though.