我有一个Ubuntu Linux的12.04.1服务器,作为一个服务运行bind9的名字parsingxxx.local域转发所有其他请求到我的互联网服务提供商的名称服务器。
这适用于networking(Windows和Linux)中的所有客户端,它们可以按预期得到名称parsing。
直到昨天,服务器本身也是如此。 但我更新了几个软件包,并重新启动它。 一切似乎都很好,所以我回家了。 今天早上,代理和电子邮件不再工作。 事实certificate,名字parsing是罪魁祸首。 在客户端nslookup仍然正常工作,但在服务器上它总是超时:
nslookup google.com connection timed out; no servers could be reached nslookup google.com 127.0.0.1 ;; connection timed out; no servers could be reached nslookup google.com 192.168.115.250 ;; connection timed out; no servers could be reached
(其中192.168.115.250是服务器本身的IP地址)
在不同的Linux计算机上工作:
nslookup google.com Server: 192.168.115.250 Address: 192.168.115.250#53 Non-authoritative answer: Name: google.com Address: ....
在Windows XP电脑上看起来像这样:
nslookup google.com *** Der Servername für die Adresse 192.168.115.250 konnte nicht gefunden werden: Non-existent domain *** Die Standardserver sind nicht verfügbar. Server: UnKnown Address: 192.168.115.250 Nicht autorisierte Antwort: Name: google.com Address: ...
(错误的意思是“地址的服务器名称…找不到……这可能意味着反向查找不起作用,我从来没有见过这个。
如果我在我的服务器上指定了我的Internet提供商的名称服务器之一,它将起作用:
nslookup google.com [IP goes here] Server: [IP goes here] Address: [IP goes here]#53 Non-authoritative answer: Name: google.com Address: ....
我无法弄清楚这里可能是错的。 由于一切正常工作,直到昨天,它必须有关于最新的Ubuntu更新或重新启动。
任何提示,将不胜感激。
更新:防火墙应该不是问题:
sudo iptables -L -v -n Chain INPUT (policy ACCEPT 16M packets, 6138M bytes) pkts bytes target prot opt in out source destination Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination Chain OUTPUT (policy ACCEPT 13M packets, 50G bytes) pkts bytes target prot opt in out source destination
UPDATE2:
由于人们不断要求resolv.conf,我想指出的是,在上面的nslookup调用中指定名称服务器的IP地址不起作用。 但不pipe怎么说:
cat /etc/resolv.conf: # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN nameserver 192.168.115.250
(如果我将IP更改为我的Internet提供商的名称服务器,它可以工作,但这不是解决scheme。)
UPDATE3:
netstat -anp | egrep :53 tcp 0 0 192.168.115.250:53 0.0.0.0:* LISTEN 104414/named tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 104414/named tcp6 0 0 :::53 :::* LISTEN 104414/named udp 0 0 192.168.115.250:53168 5.9.122.148:123 ESTABLISHED 106273/ntpd udp 0 0 192.168.115.25:53 0.0.0.0:* 104414/named udp 0 0 127.0.0.1:53 0.0.0.0:* 104414/named udp6 0 0 :::53 :::* 104414/named
对我看起来很好。
UPDATE4:
ip route show table local local 127.0.0.0/8 dev lo proto kernel scope host src 127.0.0.1 local 127.0.0.1 dev lo proto kernel scope host src 127.0.0.1 broadcast 192.168.115.0 dev eth0 proto kernel scope link src 192.168.115.250 local 192.168.115.250 dev eth0 proto kernel scope host src 192.168.115.250 broadcast 192.168.115.255 dev eth0 proto kernel scope link src 192.168.115.250
我不知道如何解释这一点。
UPDATE5:
我只是发现另一个怪胎:它不只是命名,不工作,但也smtpd:
fetchmail: reading message [...] Trying to connect to 127.0.0.1/25...connection failed. fetchmail: connection to localhost:smtp [127.0.0.1/25] failed: Connection timed out. fetchmail: Connection errors for this poll: name 0: connection to localhost:smtp [127.0.0.1/25] failed: Connection timed out. fetchmail: SMTP connect to localhost failed
发现它:无论什么原因,回环接口没有出现:
ifconfig eth0 Link encap:Ethernet HWaddr 00:1e:67:6e:cd:3b inet addr:192.168.115.250 Bcast:192.168.115.255 Mask:255.255.255.0 inet6 addr: fe80::21e:67ff:fe6e:cd3b/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:58326791 errors:0 dropped:4 overruns:0 frame:0 TX packets:109062010 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:21089630035 (21.0 GB) TX bytes:131207523503 (131.2 GB) Interrupt:19 Memory:c1c00000-c1c20000
注意这里没有“lo”。
从…开始
ifup -v lo
解决问题
感谢所有想要帮助的人,特别是synneticon-dj。