我最近在虚拟机中设置了一个 Centos 5.4 (x86_64) 盒;问题是我无法让互联网在其上运行。
对已解析的 google.com ips 进行 ping 操作,名称服务器 ips 工作正常,但 DNS 查找查询不正常。
以下是我进行的一些挖掘工作:
dig google.com
; <<>> DiG 9.3.6-P1-RedHat-9.3.6-4.P1.el5 <<>> google.com
;; global options: printcmd
;; connection timed out; no servers could be reached
nslookup google.com
;; connection timed out; no servers could be reached
我在 dig 和 nslookup 期间也没有观察到任何 UDP/TCP 数据包
cat /etc/resolv.conf
; generated by /sbin/dhclient-script
nameserver 208.67.220.220
nameserver 208.67.222.222
此外,我的 /etc/nsswitch.conf 也井然有序,包含“hosts: files dns”
可能出了什么问题?
答案1
排除iptables:
服务 iptables 停止
执行 nslookup。如果成功,则检查规则集并重试。不要忘记重新启动 iptables。
尝试通过 telnet 连接到这些 IP 地址的 53 端口:
远程登录 208.67.220.220 53
您应该看到:
$ telnet 208.67.220.220 53
Trying 208.67.220.220...
Connected to 208.67.220.220.
Escape character is '^]'.
答案2
您能 ping resolv.conf 中指定的 DNS 服务器吗?
答案3
我遇到了完全相同的问题,这个问题指引我找到了解决问题的方法。
经过三天的折腾,我终于发现问题出在我的调制解调器上。DHCP 是在本地设置的,这对我的防火墙造成了严重破坏。
关闭调制解调器上的 DHCP 并重新启动后,我的名称服务器就可以正常工作了。