Chinaunix
标题:
[原] 奇怪的DNS解析问题原因发现...
[打印本页]
作者:
无花果
时间:
2005-01-25 00:59
标题:
[原] 奇怪的DNS解析问题原因发现...
前一阵子在家玩gentoo, 发现一个很奇怪的问题:
在同时打开几个网页后, 域名解析变得非常慢, 甚至很多时候都提示找不到主机, 也就是解析不了该域名, 尤其以打开news.sina.com.cn等大型网站后问题最为严重, 有时甚至会5分钟内都不能解析任何网址. 而在同一机器的windows下却没有这种现象发生.
用tcpdump观察, 发现在打开如news.sina.com.cn等大型网页首页时, 突发许多的dns请求, 在达到一定数目后就不能再观察到任何dns回复了, 只能看到本地向dns服务器发送的dns请求. 并发现这种现象跟使用的DNS服务器无关.
照其它网友提示安装了dnscache后, 这种现象减轻, 但解析还是很慢...
因为是自己编译的内核, 一直以为是我的内核有问题. 可是怎么都找不到症结所在.
后来, 由于gentoo安装软件的速度原因, 改用debian了. 一开始好象没问题, 但有时解析还是有些慢. 以为真是gentoo的问题. 但这两天连windows下也偶尔出现解析域名失败的情况, 就打开ADSL路由器配置查看, 发现在使用DMZ的时候有一个设置是关于NAT的设置:
NAT最小端口值: 61000
NAT最大TCP链接数: 200
NAT最大UDP链接数: 100
NAT最大ICMP链接数: 25
复制代码
心里一动, 是不是跟UDP链接数有关呢? 可惜我的ADSL路由器这个值保存后需要重启路由器, 启动后值仍不变...
再下来的一件事让我更加确定了问题所在.
为了选择最快的镜象服务器, 我运行netselect-apt程序, 结果如下:
home:~# netselect-apt testing
Using distribution testing.
There is a already a mirrors_full file in the current
directory. I'll use that, rather than downloading it again.
Choosing a main Debian mirror using netselect.
netselect: unknown host debian.kida.net
netselect: 279 (24 active) nameserver request(s)...
Running netselect to choose 1 out of 101 addresses.
.
The fastest server seems to be:
http://mirrors.geekbone.org/debian/
Choosing a non-US Debian mirror using netselect.
Running netselect to choose 1 out of 0 addresses.
netselect was unable to find a mirror, this probably means that
you are behind a firewall and it is blocking traceroute.
复制代码
可以看到, 该程序一下发送了近300个dns请求, 这时我打开nslookup后, 不管使用哪里的服务器, 不管查询哪个域名都失败... 很显然是adsl路由器提供的200个UDP链接被占满了, 也就是说adsl路由器遭到了DOS攻击. 5分钟后, nslookup才又能正常工作.
问题终于找到, 除了给厂家提建议配置不能保存外, 看来我这段时间只能不使用路由模式了, 自己拔号总不会再有错了...
呵呵, 找到了问题所有, 心里一下通畅了许多.
作者:
双眼皮的猪
时间:
2005-01-25 08:57
标题:
[原] 奇怪的DNS解析问题原因发现...
抓包是解决问题的终极秘诀...哈哈...
作者:
剑心通明
时间:
2005-01-25 16:44
标题:
[原] 奇怪的DNS解析问题原因发现...
可惜俺不会
作者:
蓝点之光
时间:
2005-01-29 21:09
标题:
[原] 奇怪的DNS解析问题原因发现...
俺我不会!
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2