我刚刚因为这个失去了所有的头发:
我有
- 一台 ubuntu 12.04 机器,IP 地址为 192.168.0.100,网关为 192.168.0.1
- 192.168.0.1 上的路由器,运行转发 DNS
- ping 192.168.0.1 - 或网络上的任何 IP 地址
但解决不起作用。
ping www.google.com
unknown host www.google.com
路线-n
Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 192.168.0.1 0.0.0.0 UG 100 0 0 eth0 169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0 192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
是否配置
eth0 Link encap:Ethernet HWaddr 22:ab:01:01:77:86 inet addr:192.168.0.100 Bcast:192.168.0.255 Mask:255.255.255.0 inet6 addr: fe80::20ab:1ff:fe01:7786/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:443 errors:0 dropped:0 overruns:0 frame:0 TX packets:426 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:34620 (34.6 KB) TX bytes:64400 (64.4 KB) Interrupt:32
远程登录 192.168.0.1 53
Trying 192.168.0.1... telnet: Unable to connect to remote host: No route to host
到底他妈发生了什么 ?
答案1
路由器上的防火墙阻止了对端口 :53 的访问,已添加
-A RH-Firewall-1-INPUT -p udp -m state --state NEW -m udp --dport 53 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 53 -j ACCEPT
很抱歉给您添麻烦了(也感谢 sejo 的帮助!)
答案2
编辑你的界面让它看起来像这样
sudo vi /etc/network/interfaces
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 10.1.1.10
netmask 255.255.255.0
network 10.1.1.0
broadcast 10.1.1.255
gateway 10.1.1.1
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 10.1.1.100
dns-search test.net
dns-domain test.net
您很可能想要更改您的 dns-nameserver - 如果您不知道它是什么,只需使用 8.8.8.8。我认为您的 IP 设置没有问题,因此无需更改它们。还要更新 dns-search 和 dns-domain 并附加您的内部域名。如果您更新 resolv.conf 文件,则它可能会在网络服务重新启动时被覆盖,因为 resolvconf 包将获取放置在您的接口文件中的内容并将其放入您的 resolv.conf 文件中。因此问题可能会再次出现。此外,路由器防火墙可能会阻止端口或不提供 DNS。这就是您可以尝试 8.8.8.8 的原因。这将为您提供外部 DNS 解析。如果内部 DNS 不起作用,则需要确保 DNS 服务器可联系且正在运行。否则请使用 /etc/hosts 文件。