拔掉 DNS 线后 Debian wifi 上没有 DNS

拔掉 DNS 线后 Debian wifi 上没有 DNS

我现在已经在我的旧笔记本电脑 (Benq Joybook A52) 上安装了 wheezy Release Candidate 1,但我的无线卡 (Atheros 5006) 有一些问题。它实际上可以看到无线网络,我什至可以连接到我的家庭网络,但如果我拔掉以太网电缆,互联网将无法工作,浏览器中不会加载任何页面。我不使用任何代理,除了密码之外,我的路由器上没有任何特殊的安全设置,并且昨天它可以与 Windows 一起使用。有任何想法吗?

我是linux新手,请耐心等待,并给出详细的答案。谢谢。

编辑:我运行了 /sbin/ifconfig,结果如下:

eth0      Link encap:Ethernet  HWaddr 00:1b:24:2c:d1:9e  
      inet addr:192.168.0.106  Bcast:192.168.0.255  Mask:255.255.255.0
      inet6 addr: fe80::21b:24ff:fe2c:d19e/64 Scope:Link
      UP BROADCAST MULTICAST  MTU:1500  Metric:1
      RX packets:428 errors:0 dropped:0 overruns:0 frame:0
      TX packets:416 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:70208 (68.5 KiB)  TX bytes:37104 (36.2 KiB)
      Interrupt:20 Base address:0xa000 

lo        Link encap:Local Loopback  
      inet addr:127.0.0.1  Mask:255.0.0.0
      inet6 addr: ::1/128 Scope:Host
      UP LOOPBACK RUNNING  MTU:16436  Metric:1
      RX packets:45 errors:0 dropped:0 overruns:0 frame:0
      TX packets:45 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:0 
      RX bytes:6099 (5.9 KiB)  TX bytes:6099 (5.9 KiB)

wlan0     Link encap:Ethernet  HWaddr 00:17:c4:04:28:a5  
      inet addr:192.168.0.105  Bcast:192.168.0.255  Mask:255.255.255.0
      inet6 addr: fe80::217:c4ff:fe04:28a5/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:10072 errors:0 dropped:0 overruns:0 frame:0
      TX packets:7874 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:11775024 (11.2 MiB)  TX bytes:1303131 (1.2 MiB)

我还跑了路线-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    0      0        0 wlan0
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
192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 wlan0

ping -n 8.8.8.8 的结果是这样的:

PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_req=1 ttl=49 time=18.7 ms
64 bytes from 8.8.8.8: icmp_req=2 ttl=49 time=20.5 ms                           
64 bytes from 8.8.8.8: icmp_req=3 ttl=49 time=18.3 ms                           
64 bytes from 8.8.8.8: icmp_req=4 ttl=49 time=18.6 ms                           
64 bytes from 8.8.8.8: icmp_req=5 ttl=49 time=17.6 ms                           
64 bytes from 8.8.8.8: icmp_req=6 ttl=49 time=18.3 ms                           
64 bytes from 8.8.8.8: icmp_req=7 ttl=49 time=19.0 ms                           
64 bytes from 8.8.8.8: icmp_req=8 ttl=49 time=18.8 ms
64 bytes from 8.8.8.8: icmp_req=9 ttl=49 time=18.7 ms
64 bytes from 8.8.8.8: icmp_req=10 ttl=49 time=18.6 ms
64 bytes from 8.8.8.8: icmp_req=11 ttl=49 time=18.6 ms
64 bytes from 8.8.8.8: icmp_req=12 ttl=49 time=18.5 ms
64 bytes from 8.8.8.8: icmp_req=13 ttl=49 time=18.9 ms
64 bytes from 8.8.8.8: icmp_req=14 ttl=49 time=18.8 ms
64 bytes from 8.8.8.8: icmp_req=15 ttl=49 time=18.7 ms
64 bytes from 8.8.8.8: icmp_req=16 ttl=49 time=18.5 ms

答案1

我并不假装确切地知道是什么导致了你的问题,但从症状来看,这是一个域名系统问题:ping -n 8.8.8.8可以工作,但实际上使用网络浏览等互联网服务却行不通。 (顺便说一句,8.8.8.8 是一个令人难忘的 IP 地址,您可以确定它会响应您的 ping(它运行 Google 的公共 DNS 服务)。)

通常,您的计算机配置为查询您上游的某些 DNS 服务器,通常是您的 ISP 的 DNS 服务器。我认为这里发生的情况是,当您关闭有线连接时,它会从 中删除关联的 DNS 服务器/etc/resolv.conf,该文件列出了您的系统应使用的 DNS 服务器。由于您的 WiFi 连接具有与其关联的相同服务器,因此这些服务器会丢失。

我一般建议安装解析配置文件Debian 上的软件包以及没有固定互联网连接的计算机上的衍生产品(即主要在笔记本电脑上,尽管它对台式机和服务器没有影响)。该包跟踪与每个连接关联的 DNS 服务器,并/etc/resolv.conf在 DNS 源启动或关闭时重新生成。这应该可以解决您的问题(以及其他类似的问题)。 Resolvconf 与 Debian 软件包安装的本地 DNS 缓存兼容,例如域名解析

有时,当您安装 resolvconf 时,它会获取当前连接提供的源并将它们放入永久列表中。如果发生这种情况,请编辑/etc/resolvconf/resolv.conf.d/base、删除任何非永久可用的 DNS 服务器,然后关闭网络并重新打开(或仅运行resolvconf -u)。

解决 DNS 问题的另一种方法是使用 ISP 以外的 DNS 服务器,例如开放DNS或者谷歌。 Google 的服务有一个令人难忘的地址 8.8.8.8,如果您由于某种原因无法使用可用的 DNS,则该地址非常有用。注意使用备用 DNS 服务有缺点,因此仅当您的 ISP 的 DNS 不好时才执行此操作,而不是“仅仅因为”。

相关内容