相当长一段时间以来,一直被一个很烦人网络现象困扰,事情是这样:
每当我访问网站时(任何网站),总会在解析域名时出现3个IP地址,分别是:121.28.1.20-22这3台主机。经查询,3台主机全部指向联通,也就是我的ISP。在访问网站时,一旦这3个ip之一出现,它就会插入到加载页面的过程中来,从而打断正常的解析过程,使我的浏览器一直停滞在waiting for 121.28.1.2[0-2]之一的状态,从而致使解析不能继续下去,就卡死在那里了,唯一办法就是关闭页面(运气好可以强制刷新暂解),再重新访问一次要去的地方。这3个ip不会同时出现的,而是随机、轮番出现,比如,这次出现的是121.28.1.22,那么只要我不关浏览器,不重新连网,那么下次再出现就一定还是这个ip。若是关闭浏览器,或重连网,ip可能会换,但不是21就是20,绝不会出现第4个ip。
原来这还算是偶尔现象,但现在这个问题已经开始严重干扰我的正常网络通讯了,几乎每上一个网站我都要关闭/打开/强刷新几次甚至十几次网页才能绕开那几个IP,进入我要去的网页。我查了好多资料,用了各种可能的方法来阻止这3个ip,但不奏效,所以我怀疑这不是我的问题,而是ISP的问题。以下我收集了一些信息,想请熟悉网络的同好帮忙看看,这到底是怎么回事;若真的是ISP搞出来的,我该如何举证投拆(以下信息有哪条能说明问题?),若不是,我应如何解决。非常感谢!
***
先说一下我的系统状况:
OS: Linux (Debian5.0 稳定版) ;前几天刚刚重装的,连网前已做好了防护工作,写好了防火墙规则,正式上网前已更新全部系统,应该不存在外部入侵因素。
上网方式:ADSL , 动态IP,单机拔号,无路由。
DNS服务器: 没有用ISP提供的DNS,而是用的Comodo安全DNS。(以前一直用ISP的,照样干扰。)
浏览器: Iceweasel(其实就是火狐)。启用了远程dns解析。(仍不奏效)
***
对此现象曾采取过的措施:
用防火墙直接封堵这3个IP--无效;
封堵121.28.1.0/24这个网段--无效;
连ip带网段一起堵--无效;
同时再加入Linux 下的hosts.deny黑名单--仍无效
这里的无效指的是,无论怎样封堵,这几个ip丝毫不受影响,照样可以插入到解析过程中来。
***
经工具探测,这几个IP的主机对外开着同样的服务,用着同样的操作系统:
PORT STATE SERVICE(对3个ip的探测结果相同)
22/tcp open ssh
80/tcp open http
8080/tcp closed http-proxy
Device type: general purpose
Running: Microsoft Windows XP
OS details: Microsoft Windows XP SP2
然而奇怪的是,如果在浏览器中访问这几个主机,却会返回一个空页面。也就是说,虽然它们对外开着http服务,但其上却没有任何实际内容。
***
抓包实验
以下是我做的一个实验:我访问一个计算机论坛,同时用抓包工具监听并抓取121.28.1.0这个网段上的通讯封包,其它网段的信息不管。当时我的IP为120.1.52.153,对方出现的干扰我的IP是121.28.1.22。以下是当我访问那个计算机论时和此IP的会话:
tcpdump: listening on ppp0, link-type LINUX_SLL (Linux cooked), capture size 96 bytes
22:04:26.760735 IP (tos 0x0, ttl 64, id 63022, offset 0, flags [DF], proto TCP (6), length 52) 120.1.52.153.56428 > 121.28.1.22.www: F, cksum 0x15ef (correct), 58956993:58956993(0) ack 30055477 win 5808 <nop,nop,timestamp 10394137 10317051>
0x0000: 4500 0034 f62e 4000 4006 1dc9 7801 3499 E..4..@[email=.@...x.4].@...x.4[/email].
0x0010: 791c 0116 dc6c 0050 0383 9cc1 01ca 9c35 y....l.P.......5
0x0020: 8011 16b0 15ef 0000 0101 080a 009e 9a19 ................
0x0030: 009d 6cfb ..l.
22:04:26.771870 IP (tos 0x0, ttl 124, id 2816, offset 0, flags [DF],proto TCP (6), length 52) 121.28.1.22.www > 120.1.52.153.56428: .,cksum 0xff24 (correct), 93:93(0) ack 1 win 65535 <timestamp 1039413710394137,nop,eol>
0x0000: 4500 0034 0b00 4000 7c06 ccf7 791c 0116 E..4..@.|...y...
0x0010: 7801 3499 0050 dc6c 01ca 9c91 0383 9cc2 x.4..P.l........
0x0020: 8010 ffff ff24 0000 080a 009e 9a19 009e .....$..........
0x0030: 9a19 0100 ....
22:04:33.226812 IP (tos 0x0, ttl 64, id 9858, offset 0, flags [DF],proto TCP (6), length 60) 120.1.52.153.45874 > 121.28.1.22.www: S,cksum 0x0531 (correct), 703039211:703039211(0) win 5808 <mss1452,sackOK,timestamp 10395753 0,nop,wscale 5>
0x0000: 4500 003c 2682 4000 4006 ed6d 7801 3499 E..<&.@[email=.@..mx.4].@..mx.4[/email].
0x0010: 791c 0116 b332 0050 29e7 86eb 0000 0000 y....2.P).......
0x0020: a002 16b0 0531 0000 0204 05ac 0402 080a .....1..........
0x0030: 009e a069 0000 0000 0103 0305 ...i........
22:04:33.239922 IP (tos 0x0, ttl 124, id 0, offset 0, flags [DF], protoTCP (6), length 60) 121.28.1.22.www > 120.1.52.153.45874: S, cksum0x1499 (correct), 30055477:30055477(0) ack 703039212 win 65535 <mss1460,nop,timestamp 10395753 10395753,nop,eol>
0x0000: 4500 003c 0000 4000 7c06 d7ef 791c 0116 E..<..@.|...y...
0x0010: 7801 3499 0050 b332 01ca 9c35 29e7 86ec x.4..P.2...5)...
0x0020: a012 ffff 1499 0000 0204 05b4 0108 0a00 ................
0x0030: 9ea0 6900 9ea0 6901 0000 0000 ..i...i.....
22:04:33.239975 IP (tos 0x0, ttl 64, id 9859, offset 0, flags [DF],proto TCP (6), length 52) 120.1.52.153.45874 > 121.28.1.22.www: .,cksum 0xf4d7 (correct), 1:1(0) ack 1 win 5808 <nop,nop,timestamp10395756 10395753>
0x0000: 4500 0034 2683 4000 4006 ed74 7801 3499 E..4&.@[email=.@..tx.4].@..tx.4[/email].
0x0010: 791c 0116 b332 0050 29e7 86ec 01ca 9c36 y....2.P)......6
0x0020: 8010 16b0 f4d7 0000 0101 080a 009e a06c ...............l
0x0030: 009e a069 ...i
(为节省篇幅以下从略了)其最终结果是,我的主机和对方的主机就这么循环往复的对话,纠结不清,最后直到ctrl+C终止抓包时还在继续。
我不知道这些信息有没有价值,这方面实在还是门外汉,所以还请有经验的同好帮助分析一下。
***
以下是用traceroute命令测出的到那个计算机论坛所经过的路由:
traceroute to www.kpfans.com (218.93.127.217), 30 hops max, 40 byte packets
1 120.1.52.1 (120.1.52.1) 9.420 ms 11.344 ms 14.747 ms
2 221.192.5.86 (221.192.5.86) 18.671 ms 19.626 ms 22.566 ms
3 221.192.15.221 (221.192.15.221) 26.199 ms 28.668 ms 29.613 ms
4 218.12.255.17 (218.12.255.17) 38.973 ms 44.588 ms 45.081 ms
5 ns.vservers.net.cn (202.99.160.45) 45.540 ms 47.509 ms 49.934 ms
6 219.158.13.245 (219.158.13.245) 60.005 ms 22.876 ms 23.414 ms
7 219.158.5.66 (219.158.5.66) 26.814 ms 27.345 ms 29.705 ms
8 219.158.32.170 (219.158.32.170) 65.402 ms 65.892 ms 67.330 ms
9 202.97.44.69 (202.97.44.69) 91.222 ms 92.168 ms 95.601 ms
10 202.97.39.194 (202.97.39.194) 106.675 ms 110.118 ms 112.538 ms
11 * * *
12 202.97.27.106 (202.97.27.106) 77.975 ms 67.483 ms 69.088 ms
13 * 61.160.203.74 (61.160.203.74) 63.628 ms 67.017 ms
14 61.160.203.122 (61.160.203.122) 92.382 ms 94.065 ms *
15 61.160.253.58 (61.160.253.58) 87.379 ms 90.308 ms 93.494 ms
16 218.93.127.217 (218.93.127.217) 91.771 ms 98.342 ms 103.263 ms
一共经过了16跳,虽然11,13和14跳好像有点问题,但最终还是到了目的地,其中没有那3个IP中的任何一个。实际上,在对其它站点做traceroute时,从来没有出现过那几个IP,说明它们根本不是路由器?
***
以上就是我能做的了,还请大家帮忙,看看问题出在什么地方,谢谢啦~ |
|