![在 Linux 上无法访问某些网站,但在 Windows XP 上可以](https://linux22.com/image/1308395/%E5%9C%A8%20Linux%20%E4%B8%8A%E6%97%A0%E6%B3%95%E8%AE%BF%E9%97%AE%E6%9F%90%E4%BA%9B%E7%BD%91%E7%AB%99%EF%BC%8C%E4%BD%86%E5%9C%A8%20Windows%20XP%20%E4%B8%8A%E5%8F%AF%E4%BB%A5.png)
我有一个 Ubuntu 机器和一个 WindowsXP 机器,两者都运行良好。
但是我无法在 Ubuntu 中访问某些网站(例如 Apple.com、www.suning.com),而在其他 Windows 机器中则可以。
那些只是普通网站,我没有为它们修改两个机器中的 hosts 文件。
我想这和 dns 等有关,但是如何修复它呢?
/etc/resolv.conf 中只有一行有效的“nameserver 192.168.1.1”。
当我在 Ubuntu 中 ping www.suning.com 时,它显示:
64 bytes from www.suning.com(202.106.195.30):icmp_req=4 ttl=236 time=55.4 ms
但是当我在 Windows 中执行此操作时,它显示:
Reply from 123.103.65.243: bytes=32 time=47ms TTL=42
显然 Ubuntu 解析的 IP 不正确。
答案1
事实上,这可能不是最好的例子,因为该地址解析为中国各地的不同 ASN:
<me>@harley:~$ whois -h whois.cymru.com " -v 61.147.122.75"
AS | IP | BGP Prefix | CC | Registry | Allocated | AS Name
23650 | 61.147.122.75 | 61.147.122.0/24 | CN | apnic | 2000-03-14 | CHINANET-JS-AS-AP AS Number for CHINANET jiangsu province backbone
<me>@harley:~$ whois -h whois.cymru.com " -v 202.106.195.30"
AS | IP | BGP Prefix | CC | Registry | Allocated | AS Name
4808 | 202.106.195.30 | 202.106.192.0/19 | CN | apnic | 1998-08-17 | CHINA169-BJ CNCGROUP IP network China169 Beijing Province Network
<me>@harley:~$ whois -h whois.cymru.com " -v 123.103.65.243"
AS | IP | BGP Prefix | CC | Registry | Allocated | AS Name
17431 | 123.103.65.243 | 123.103.64.0/19 | CN | apnic | 2006-12-06 | TONET Beijing TONEK Information Technology Development Company
但是,您刚刚证明您的两个盒子都可以通过路由器(地址为 )很好地解析 DNS 192.168.1.1
。
此时,如果您有条件,我会更改路由器使用的 DNS 服务器。8.8.8.8
和8.8.4.4
都是不错的选择,因为它们是 Google 的公共 DNS 服务器。对于 Linux 机器,您也可以使用nameserver 8.8.8.8
它来执行此操作。
答案2
您可以使用 telnet 检查 HTTP 连接和原始消息。
% telnet www.suning.com 80
如果使用 HTTP 连接,主机响应如下:
Trying 183.60.136.29...
Connected to www.suning.com.
Escape character is '^]'.
接下来,在 interapt 中输入 HTTP 请求:
GET / HTTP/1.1
Host: www.suning.com
并按两次回车键。
如果在网站上获取文档,则联网并连接成功。因此,问题不在于系统配置。请检查您的浏览器设置。