开始新对话

未解决

此帖子已超过 5 年

2665

2014年12月10日 16:00

记一位英明神武的丈夫——Wireshark应用小科普之一

​我们海派大男子主义患者,在老婆面前都是万能的。小到买汰烧换灯泡(此处应念上海话),大到修电脑装家具,从来都只有一句话,“放着我来!”​

​当然了,为了不在关键时刻掉链子,平时学点技术也是有必要的。就拿倒腾家庭网络这件事来说,学习Wireshark就非常有用。我家不久前就发生过这样一起网络事故。​

​大概是晚上8点55分,小满妈照常打开电脑,准备连到某公司的网上参加9点钟的会议。奇怪的是页面一直打不开,尝试了一下新浪微博也连不上,就连一向稳定的百度都不行。难道是我家的网络断了?那为什么微信和QQ却是好的?眼看会议即将开始,本患者的大男子主义症状发作,一把将电脑抢了过来。​

​我先打开Wireshark抓包,然后连接到该网站(域名为morganstanley.com)。只见Wireshark不断地滚动显示下图的信息:​

​很显然,我的电脑正试图解析“morganstanley.com”这个域名所对应的IP地址,但DNS查询发出去后迟迟未见回复!中国人都知道一定是这个DNS服务器被墙了。我一时也不知道国内有什么好用的DNS服务器,因为搜索网站都打不开,当时手机也没有开通上网。读到这里时不妨停下来想想,换作是你的话,碰到这种情况会怎么办?​

​我当时想到的是还可以用的QQ,于是找到一位在线的美国同学,说帮我执行“nslookup morganstanley.com”,然后把结果发过来。这位同学虽然是读生物的,但立即领会我的意思,很快就把返回的IP地址发过来了。我把这个IP输入地址栏,果然就打开了网页。小满妈喜滋滋地接过电脑,留下我在原地思考,为什么QQ和微信就没问题呢,难道腾讯的产品是不用DNS,直接用IP的?还没想明白的时候,那边小满妈又叫起来了,“喂,还是连不上!”​

​我过去一看,原来登陆主页之后又弹出了一个新的IE窗口,是新窗口开不了了。估计还是老问题导致的,于是我故技重施,果然从Wireshark中发现新窗口对应着另一个域名。再把新域名发给美国同学,又解析到了一个新的IP地址。​​当我想从地址栏输入新IP的时候才发现问题严重了,这个弹出的窗口竟然是没有地址栏的,怎么办?幸好我大学时兼职过Windows的技术支持,知道怎么跳过DNS查询,打开C:\Windows\System32\drivers\etc\hosts文件,再把新域名和IP地址写进去就好了。​

​小满妈兴高采烈地开会去了,这时候恰好9点整。我反正闲着无聊,就在另一台电脑上抓了个登陆QQ的网络包,那究竟QQ有没有用到DNS呢?暂时不告诉你,自己抓一个包看看吧。先透露一下,QQ的应用层协议在Wireshark上也是可以解析的,叫“OICQ, popular IM in China”,端口号是UDP 8888。​

107 消息

2014年12月10日 16:00

请不要在第一楼就歪了……

2 Intern

 • 

4K 消息

2014年12月10日 16:00

赞,亮点是这个域名吗,满妈很高大上啊

107 消息

2014年12月10日 17:00

我当时试过8.8.8.8,也不行。不知道现在这个DNS服务器可以用了没有。当时最尴尬的状态是无法打开任何搜索网站,所以没有办法找到好用的DNS服务器。只能靠人肉。

2 Intern

 • 

4K 消息

2014年12月10日 17:00

如果遇到DNS污染或其他问题,我一般会用Google的公共DNS 8.8.8.8和8.8.9.9来尝试解析,当然有些地区这两个地址可能也被GFW认证了...不过提供公共DNS服务的企业不少,有些CDN服务提供商的网站还提供全球DNS的批量解析工具。

QQ应该是内置了一些IP列表吧,这样设计我估计是为了减少对电信运营商DNS的负担。万一客户端出现问题,最多就影响到腾讯自己家。这方面的反例么就是09年5.19的暴风影音造成的全国电信DNS大规模瘫痪的事件...

2 Intern

 • 

2.8K 消息

2014年12月10日 17:00

如果把网络设置为自动获取DNS服务器地址,应该可以访问搜索网站,然后通过搜索网站查找到国外可用的DNS服务器地址。

107 消息

2014年12月10日 18:00

你是说在自己的Windows电脑上自动获取DNS服务器吗?那应该是从家里的无线路由获得的。图中的这个DNS服务器就是自动获得的。

2 Intern

 • 

2.8K 消息

2014年12月10日 19:00

自动获取到的应该是国内DNS服务器地址,故障原因是这个国内DNS服务器出现问题?和天朝防火墙有关系?

107 消息

2014年12月10日 20:00

嗯,这个案例的主要目的倒不是怎么找到好的DNS。主要是分享在什么网都上不去的时候,怎么通过Wireshark快速找到问题原因并解决。

2 Intern

 • 

4K 消息

2014年12月10日 20:00

本地ISP的DNS挂了的可能性比较大

107 消息

2014年12月10日 20:00

图中的这个IP就是当年自动获得的那个。ISP应该是有线通。我后来就一直用阿里的DNS服务器。

找不到事件!

Top