将BT下载对抗到底

     随着互联网业务的多元化,各种P2P应用也越来越多,在企业中多数流量都会被类似于BT的下载所占用,BT之所以会危害到局域网,是因为它占用了大量网络带宽。网络管理员可以通过一些管理软件或者网络硬件配置,针对应用流进行较细粒度的速率限制,例如将BT用户下载的优先级限制为5(0最高,7最低),带宽限制为64Kbps。这样可以确保BT软件使用的同时不会影响其他业务的开展。比如Mcafee的IPS可以对BT进行封锁(不完全基于软件),Packeteer 9500可以对各种七层应用进行流量限制,优先保障HTTP(不完全基于BT软件)。H3C的UTM防火墙支持限制BT,华为的NE20路由器支持限制BT。
限制BT的方式
现在这种对抗BT的应用已经要求业务将安全防范定位在了应用层设备,对于部分中小企业实际可以利用已有的设备例如路由、交换对其加以控制。
一、NBAR网络应用识别
在Cisco 网站上下载一个叫做Bittorrent.dplm的文件,通过TFTP或SSH上传到路由器上
1. 定义BT协议
 
  1. ip nbar pdlm bittorrent.pdlm
2. 定义Class-map和policy-map
 
  1. class-map mathc-all bittorent
  2. match protocol bittorrent
  3. polic-map bittorrent-policy
  4. class bittorrent
  5. drop
3. 应用到接口上
 
  1. interface fastethernet 0/0
  2. service-policy input bittorrent-policy
  3. service-policy output bittorrent-policy
PDLM是为了扩展NBAR对网络协议和应用的识别能力而设置的通过一些预订好的PDLM模块,Cisco路由器就能够识别出相应的协议和应用而不需升级IOS。如何获得更多的PDLM的下载?http://www.cisco.com/cgi-bin/tablebuild.pl/pdlm 不过需要CCO账号,而且需要路由器IOS和相关模块的支持。
二、封BT网站和端口
我们可以对比较热门的BT网站进行过滤,在安全网关上配置URL过滤规则,之后,在出接口上启用过滤HTTP_Filter功能,禁止对它们的访问即可。解决BT对局域网的危害,最彻底的方法是不允许进行BT下载。BT一般使用TCP的6881-6889端口,网络管理员可以根据网络流量的变化进行判断,在网关中将特定的种子发布站点和端口封掉,在BT下载软件的Track中可以获得这些信息。但是现在大多数BT软件可以修改端口号,因此网管可以根据实际情况,在不影响正常业务的情况下尽可能将封闭的端口范围扩大,把一些特定的种子发布站点和端口进行封闭。
常用BT端口(包括TCP和UDP):1881-1889;4661,4662,4665,4672,4711;6881-6999;77771-7999;8881-8999;16881-16999;18881-18999,有待继续增加。
三、限制用户总带宽
现在有些交换机支持端口限速,这样可以把用户总的带宽限制,也可以达到目的,但对用户的正常应用难以保障。
四、限制最大连接数量
在使用BT软件时,下载者会周期性地向Tracker登记,使得Tracker能了解它们的进度,下载者之间通过直接连接进行数据的上传和下载。这种连接使用的是BitTorrent对等协议,它基于TGP。因此,网络管理员可以针对这些特点,对TGP最大连接数进行控制,从而达到控制BT对网络带宽的占用。
五、其他方法
如果是小型局域网,有的代理软件支持限制BT,如网络岗、BT终结者等。另外,微软的ISA也支持限制P2P应用,当然可以在设备上启用QoS也是可以的。
 
 

本文出自 “李晨光原创技术博客” 博客,谢绝转载!

将BT下载对抗到底的更多相关文章

  1. BT下载原理分析

    版权声明:本文为博主原创文章,未经博主允许不得转载. BitTorrent协议. BT全名为BitTorrent,是一个p2p软件,你在下载download的同时,也在为其他用户提供上传upload, ...

  2. Transmission : 如何在Fedora下使用BT下载

    先讲讲BT协议的名词: Glossary of BitTorrent terms Transmission 介绍 BT下载客户端 特点: 支持BT下载(.torrent 种子) 或者 磁链( magn ...

  3. 【转】与BT下载相关的概念

    1. DHT DHT全称叫分布式哈希表(Distributed Hash Table),是一种分布式存储方法.在不需要服务器的情况下,每个客户端负责一个小范围的路由,并负责存储一小部分数据,从而实现整 ...

  4. 关于BT下载的一点事儿

    之前一直对BT下载很的好奇,今天迅雷出现了一些问题,于是上网了解了一下BT下载的原理,果然还是有所收获的. 1.为什么BT下载用户越多下载,速度越快? 答:BT全名为BitTorrent. 在传统下载 ...

  5. NAS4Free 配置BT下载

    NAS4Free 9.3.0.2 开启BT下载功能 Services|BitTorrent 选中右上角的复选框 Peer port 是监听端口,用于接受外部连接,需要在路由器配置该端口到服务器,才能提 ...

  6. 搭建自己的BT下载平台服务器

    [原理基础] BT(Bit Torren比特流)是由国外的一名叫Bram Cohen的程序员开发的下载软件,可以说它是目前网络是非常流行的一个多点下载的P2P软件,它最显著的特点就是:下载的人越多,速 ...

  7. vs2017_enterprise正式版离线安装包bt下载

    vs2017_enterprise正式版离线安装包bt下载 点击这里下载种子 磁力链接 安装前请先打开certificates目录,安装里面的三个证书 离线下载教程 : https://docs.mi ...

  8. 常用下载方式的区别-BT下载、磁力链接、电驴

    出处:https://www.jianshu.com/p/72b7a64e5be1 打开 115 离线下载的窗口,看到支持这么多种链接,你都清楚他们是什么原理嘛?接下来我们一个一个说. 一.HTTP( ...

  9. BT下载的原理 和疑问

    我心中有几个疑问,同时也搜索了点素材,肯能对理解问题有帮助. BT下载,即P2P下载,是一种不需要中心化服务器的下载,实现原理是,每个客户端在下载的时候也作为服务器. 我的疑问是,P2P各个节点是如何 ...

随机推荐

  1. Gson解析List的一点小问题

    这阵子在使用gson解析时遇到了点小麻烦,因为一直用的fastjson,最近一个项目里使用的gson,需要解析list集合,查资料都是使用TypeToken解决,相对比较麻烦,下面为大伙推荐一种简便的 ...

  2. 函数式JS: 原来promise是这样的monad

    转载请注明出处: http://hai.li/2017/03/27/prom... 背景 上篇文章 函数式JS: 一种continuation monad推导 得到了一个类似promise的链式调用, ...

  3. java 多线程——join()方法

    在java语言中,join()方法的作用是让调用该方法的线程在执行完run()方法后,再执行join 方法后面的代码. 简单点说就是,将两个线程合并,用于实现同步的功能. 具体而言:可以通过线程A的j ...

  4. git提交的规范

  5. xargs---组合命令的工具

    xargs命令是给其他命令传递参数的一个过滤器,也是组合多个命令的一个工具.它擅长将标准输入数据转换成命令行参数,xargs能够处理管道或者stdin并将其转换成特定命令的命令参数.xargs也可以将 ...

  6. 紫书 例题 10-14 UVa 12034(组合数+递推)

    这道题有点类似动态规划,设答案为f(n) 第一个人有i个人,就有c(n,i)种可能 然后后面有f(n-i)种可能,所以相乘,然后枚举所有可能加起来就ok了. #include<cstdio> ...

  7. 【习题 8-16 UVA - 1618】Weak Key

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 枚举N[q]和N[r]的位置 因为N[q]是最大值,且N[r]是最小值. 且它们是中间的两个. 枚举这两个可以做到不重复枚举. 然后 ...

  8. MapReduce JOB 的输出与输出笔记。

    提高 MapReduce 价值,自定义输入和输出. 比如跳过存储到 HDFS 中这个耗时的布置. 而只是从原始数据源接受数据,或者直接将数据发送给某些处理程序. 这些处理程序在 MapReduce 作 ...

  9. android音乐播放器开发 SweetMusicPlayer 载入歌曲列表

    上一篇写了播放器的总体实现思路,http://blog.csdn.net/huweigoodboy/article/details/39855653,如今来总结下载入歌曲列表. 代码地址:https: ...

  10. 学习 shell —— 创建序列数组

    list/array 1. seq 方法创建 基本用法: $ a_num_seq = ($seq 5) $ echo $a_num_seq 1 2 3 4 5 a_num_seq 得到是字符串,不同之 ...