Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

I am compiling my own 3.14 kernel. I fear I may have left out some important networking feature to get DNS working.

I can't resolve domain names. I can ping my DNS server. I can resolve using that DNS on other machines so I know it's not the server.

~ # cat /etc/resolv.conf
nameserver 192.168.13.5

~ # nslookup google.com
Server:    192.168.13.5
Address 1: 192.168.13.5

nslookup: can't resolve 'google.com'

~ # ping -c 1 google.com
ping: bad address 'google.com'

~ # ping -c 1 192.168.13.5 
PING 192.168.13.5 (192.168.13.5): 56 data bytes
64 bytes from 192.168.13.5: seq=0 ttl=128 time=0.382 ms

--- 192.168.13.5 ping ststistics ---
1 packets transmitted, 1 packets recieved, 0% packet loss
reound-trip min/avg/max = 0.382/0.382/0.382 ms

Any ideas what I left out? here is my config: http://pastebin.com/vt4vGTgJ

EDIT:

If it's not the kernel, what could I be missing? I am using busybox, statically linked. there are no shared libraries in this system.

EDIT2 The problem is with busybox. I used a precompiled one and did not have issues. I need to look into compilation options with it. Thanks for your help.

https://gist.github.com/vsergeev/2391575:

There are known issues with DNS functionality in statically-linked glibc programs (like busybox in this case), because libnss must be dynamically loaded. Building a uClibc toolchain and linking busybox against that would resolve this.

share|improve this question
    
Do you have any firewall configured? If so, do you block port 53 UDP/TCP? –  Jenny D Apr 11 at 14:03
    
No firewall, no block on port 53. I can access the DNS from another machine on the same subnet. –  AllenKll Apr 11 at 14:04
    
As far as i iknow you can't just disable DNS functionality by .config-options from your kernel. –  Bonsi Scott Apr 11 at 14:07
    
Are you sure that your DNS server @ 192.168.13.5 is allowing recursive queries? For example, if you dig @192.168.13.5 www.google.com do you get any additional info? Can you perform recursive queries against your DNS server 192.168.13.5 from other machines? –  Chipster Apr 11 at 14:54
1  
your kernel seems to be Ok, but your DNS resolving does not work. Did you obtain the nameserver IP from DHCP? is route set? try a different nameserver i.e. nameserver 8.8.8.8. –  user55518 Apr 11 at 15:12

1 Answer 1

I'm not sure if this is the same problem I had or not, but I recently upgraded and old internal DNS server system from OpenBSD 3.8 to 5.6, and I lost the ability to resolve hosts with ping, but the host command was working. Turned out I had to add 127.0.0.1/8 to the match-clients directive in named in addition to the 192.168.0.0/16 which I already had there, and then it started to work properly after restarting named.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.