Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1733577
  • 博文数量: 782
  • 博客积分: 2455
  • 博客等级: 大尉
  • 技术积分: 4140
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-06 21:37
个人简介

Linux ,c/c++, web,前端,php,js

文章分类

全部博文(782)

文章存档

2015年(8)

2014年(28)

2013年(110)

2012年(307)

2011年(329)

分类: LINUX

2012-05-16 21:20:47

迅雷是现在第1大下载工具,但是有些时候我们的网络带宽不是很多,内网又有不少人在使用迅雷下载东西,网速特别慢特别慢的.我们的小内网又没有可限制网速的路由器.下面介绍一种另类的限制P2P的方法!希望对大家有用!ACL限制!现在最普通的上都有这个功能的!

如今迅雷这种流氓软件不是简单的封端口就能完事的,还得从它的原理入手,找到破解之道.

1. 迅雷是什么
============

    迅雷是基于P2SP的一款下载软件,能够大大增强下载速度,可谓迅雷不及掩耳。

    P2SP的道理不复杂,就是指:如果多个服务器上有某个相同的文件,当某个用户下载其中一个服务器上的这一文件时,迅雷会自动查找到另外的几个服务器,同时下载这一文件的不同部分,达到提速的目的。

    也就是说,当你用迅雷下载一个文件的时候,迅雷不是直接去连接下载服务器,而是先连接它的资源服务器,在资源服务器中搜索你需要的这个文件,然后开始同时下载.

    根据这个原理,我们屏蔽掉发往迅雷资源服务器的数据包,应该就能封掉迅雷了.

2. 迅雷下载抓包
===============

    迅雷很流氓, 流氓得连资源服务器的IP地址都不让我们知道. 它不告诉我们, 我们只好自己动手了, 用嗅探器来分析迅雷下载时的数据包.

    首先下载安装wireshark这个嗅探工具
       

    安装好后,启动wireshark,打开"Capture ---> Interfaces",点击网卡后的"Options"按钮(如图1). 

点击"Capture Filter"按钮新建一个过滤器,使嗅探器只抓取从本地网卡上经过的数据包(如图2).

注:为减少分析抓取数据包时的干扰, 建议关闭所有程序.

    现在我们用迅雷下载wireshark那个连接, 同时启动wireshark抓包
    (打开"Capture ---> Interfaces",点击网卡后的"Start"按钮).

   抓取一定数据包后,点击"Capture ---> Stop"按钮停止抓包, 同时停止迅雷, 免得浪费带宽.

3. 数据包分析
=============

   注:这里的数据是根据我抓取的数据包分析的,你的会有不同.

   首先介绍一下我的网络设置, IP地址: 192.168.101.211, 网关: 192.168.101.1, DNS: 211.161.159.3.

    我们从抓取的第一个数据包开始(如图3).

No.1
        源地址(Source)192.168.101.211
        目的地址(Destination)211.161.159.3
        协议(Protocol)DNS
        信息(Info)Standard query A hub5sr.sandai.net

    这是一个DNS查询数据包,但很奇怪,从 transact.dl.sourceforge.net 下载文件应该先查询   
    transact.dl.sourceforge.net的地址啊,怎么会先查询hub5sr.sandai.net呢?

    用浏览器上看看, 好家伙, 居然是迅雷在线的网站, 在百度里一搜, 发现sandai.net是迅雷旗下的网站,这个应该是迅雷的资源服务器之一了.

    No.2
        源地址(Source)211.161.159.3
        目的地址(Destination)192.168.101.211
        协议(Protocol)DNS
        信息(Info) Standard query response CNAME hub4t.sandai.net A 58.254.39.6

    这是DNS服务器的回复数据包,说hub5sr.sandai.net是hub4t.sandai.net的一个别名,IP地址是58.254.39.6.

    No.3
        源地址(Source)192.168.101.211
        目的地址(Destination)211.161.159.3
        协议(Protocol)DNS
        信息(Info) Standard query A transact.dl.sourceforge.net

    这又是一个DNS查询数据包,现在才开始查询transact.dl.sourceforge.net的地址.

    No.4 - No.7都是hub4t.sandai.net(58.254.39.6)和本机(192.168.101.211)的通信数据包, 看来迅雷的资源服务器反应还是蛮快的!出品!请保留版权信息!

    No.9
        源地址(Source)211.161.159.3
        目的地址(Destination)192.168.101.211
        协议(Procotol)DNS
        信息(Info) Standard query response CNAME mirror01.transact.net.au A 202.55.147.10

    这是DNS服务器的回复数据包, 说transact.dl.sourceforge.net是mirror01.transact.net.au的别名,IP地址是202.55.147.10.

    接下来的数据包和上面几个差不多,都是查询DNS,本机和资源服务器通信,文件下载数据包等.

4. 封杀迅雷
============

    我们只要在路由器上将迅雷发往资源服务器的数据包丢掉,迅雷就不能获取更多的下载地址,只能从transact.dl.sourceforge.net这一个地址下载了,迅雷的下载速度和占用的带宽自然就下降了.

    打开 HZZ Web 管理,点击"防火墙 ---> 访问控制(ACL) ---> 转发(Forward) ---> 新建ACL规则",依次填入一下内容(如图4):

规则名: xunlei
    目的IP地址: 58.254.39.6
    匹配动作为丢弃
    规则状态为激活

    点击"提交修改"启用这条规则即可.

5. 备注

    迅雷有很多资源服务器,可根据以上的方法将它们找出来,然后添加到路由器的ACL规则中.

    封杀前,迅雷的下载速度如图5.

封杀后,迅雷的下载速度如图6.

方法二、DNS 过滤

在DNS过滤中将sandai.net这整个泛域名过滤掉,过滤后迅雷下载时,将会出现域名解析失败,从而无法连接到它的资源服务器。

打开 HZZ Web 管理,点击"防火墙 ---> DNS过滤",勾选"启用DNS过滤",

在"要过滤的域名关键字 (每条记录占一行, 如: badomain.com) "中

填入"sandai.net",保存设置即可.

阅读(2456) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~