最近,网通和电信通过限制路由把我们的网络搞的乌烟瘴气。俗话说“知己知彼,百战不殆”,下面就说下我个人的理解。
7 U" z% r1 p7 C' ?0 }        电脑的数据经过路由器NAT转换后,三层以下完全被重新封包,跟内网的IP,MAC没有一毛钱关系。因为一旦数据包出了路由器,所有的源IP地址全部转化成路由器的WAN口地址,MAC地址也转换成WAN口的MAC地址。
, K6 f4 K6 S3 _% J! n$ E# v. c) i3 r3 u0 d9 R3 Z) V
        ISP在远端都会有流量的监控和分析。所谓的依靠连接数,目的地址,都是做粗略的“行为判定”。从数据流上精确分析的话,TCP/IP包里有一个数据段会直接暴露你是否接了内网,这就是IP首部的Identifier字段。这个数据段不影响寻址,路由器即使做了NAT后也不会改变。/ H/ }7 [0 k" u0 W" r% X7 M
     这个IP首部的Identifier字段就叫做IPID。每个IP包都有一个ID,本来是用于标识IP包,便于分割和重组长度大于MTU的报文。一般来讲,计算机在启动时会自己指定一个 IP ID 的起始值,然后在发送IP包时有规律的增长。路由器在做源 NAT 的时候一般不会修改 IP 包中的 ID 值。由于每个计算机在启动时的 IP ID 相同的概率非常非常非常低,所以电信的局端设备就可以根据 IP 的 ID 值的变化区间来判断路由器后面有几台计算机,因为每台计算机发送的 IP 包的 ID 值会在各自的区间增长。破解这种限制就需要在路由器做源 NAT 时修改每个IP包的ID值,要么在一个统一的范围内变化,模仿是一台计算机在使用Internet;要么干脆随机,让局端设备分析不出规律。IPID 模块就是派这个用处的。, K$ ?: z4 I1 F% l* u3 ?8 a0 Y) W
       每台主机发出的数据包Identifier一般是连续的,每次增加一位,比如600001,600002....如果探测到有多组IPID 600001,600002,900010,900011...那么ISP认为你是多用户,最最简单的方法相信大家已经看出来了:就是通过两次NAT,也就是串联两个路由器。但事实上这也取决于不同路由器的算法或者策略,是否重新封包盖戳。6 @, b$ d) w# P& @1 y
        下面就比较流行的tomato固件做下说明,版本是tomato1.19 ip限速版。
$ K$ ?" T& r" x1 \       1) New Functions --ToolBox--IPID Adjust
x8 z" `! J& O7 h# f4 } 它有两个选项:pace1 及 chaotic ,在这选 chaotic
+ i. j, c* g& ^. y2) Port Forwarding -- Basic -- Port Forwarding
5 d0 I" f ?0 R 防电信SNMP电信嗅探,将UDP 161,162 转发到不存在的IP上。一般来说TOMATO 不支持SNMP,这一步是为防意外。
! }1 m6 |# c. }" ?% S1 U, r E3) Advanced--Conntrack / Netfilter --Miscellaneous1 w S& R- \( h1 B5 Q" ^: _$ F# Q
TTL Adjust 选 +1
" g# M1 z+ }9 }8 H Inbound Layer 7 √ 开启此项
% e" s( B" D7 E: u& k4) 将WAN 端MAC 置为客户机 MAC ,这招老掉牙了,但在某些地方还是很管用。' E+ w- l% e0 `' @# @4 M! {9 l
Advanced--MAC Address --WAN Port 点击 Clone PC
# b( n1 E) d& l1 |% w6 ?; ]        经过上面的设置一般来说就可以了,要是还不行就换tp-link r402吧,据网友一致反应效果不错。- b& G; l% h% S9 H# A" ^& Y
       如果还会收到警告怎么办,拿起电话打客服,向话务员MM投诉。装着无辜的样子,振振有词地说没有共享,呵呵,她们也只好网开一面了。这一招,好多网友屡试不爽……4 u8 b% I) d8 z+ }. ?; Q
还有两个方法,不在此介绍,要离题啦。 |