|
发表于 2012-8-19 01:24:23
|
显示全部楼层
如果你用了路由,就一定注意网卡和路由的mtu值,光猫一般可以不用动,0 k. J" A+ K% }$ U/ \' G0 `4 z. L
如果没用路由器,就没关系。/ m @: A7 i7 ^8 P
8 V/ v. R) K+ J4 ], l7 k l T我用了磊科的改版路由,支持4WAN口,但是mtu值最高只能设置1492,0 X* r9 C. m* {) }, h$ S- G! D$ J" L
而电脑网卡一般默认1500,! ]9 G0 b# m; ~9 d9 y
之前用的是DD路由, mtu值是自动适应的,所以之前玩游戏没有出现一会慢一会正常的现象,' r2 D" W* }, P G) P6 z
后来用了,发现网络响应不稳定,玩暗黑3总是卡,20M+20M的网速的(体验的3个月),; W; t2 e/ E* x, e
查了一些文章才怀疑到mtu值,后来测试了一下, 网卡是1500,路由1492,光猫好像是1500。$ ]: A. {$ i9 ~
修改了网卡成1492,后来再上就没有发现这个问题。
$ M( o1 r, m9 q1 m, D5 W! M
; l. S" E* y3 H转帖子内容给你看看. [. V0 c) P& o0 y. h6 t+ n
, {* ?' V7 [+ q9 b, @$ P$ }那到底设置多大的MTU好捏,简单的测试下就行2 G) Z8 v2 U" T$ c
首先,把路由器的MTU设置成默认(一般是1492或者1500)
2 d* Z% k: h M3 S然后我们开始测试& D, O2 [9 d7 i. x% P
拿百度举例ping -l 1472 -f www.baidu.com
6 t2 A% O# p, f8 M0 I$ @-l 代表我们这个PING的ICMP包大小为1472
! a0 S( ?) ~3 G, J o3 A, S-f 代表为强制不拆分包+ j7 O- y& |0 z7 t
为什么设置1472捏。。嘿嘿,我假设的,猜的6 |: l5 u5 }: x$ B5 w
好了如果PING正常,回应有时间XX MS和TTL 那么我们运营商的MTU设置的比1472大,如果出现需要拆分数据包但是设置DF,就代表运营商MTU比这个数字小- U; N4 k1 m$ k; s" G& t5 C
那么我们根据情况增大或者减小这个数值,到什么程度捏?
; V2 @8 p* z; P; v9 @0 s# ^. y到这个数据包正好能传输的大小,也就是说刚好能传输不需要拆分再大1点,就一定需要拆分程度
4 K# W( p$ ~6 V4 p一般电信的路由器是1464# t& ~ Y2 e: W" A9 q; ?4 m, V
但是先别急着设置1464 数据传输还是有个叫包头的信息,一般28 所以MTU设置为1464+28=1492
% j1 O8 \& `8 M2 _- E- @) Y好了,把路由器的MTU设置成1492吧
+ r' g8 e, E/ W' G!!!!!!!!!!!!但是。。。本机的MTU是1500哦,也就是说你的包到了你自己的路由器上依旧被拆分了, ?! n' U5 g6 @$ l1 H' g) @: A
那怎么办捏1 ?! J7 C& h7 C# g
WIN7用户0 D2 U$ Y! f4 J
开始-运行-cmd9 u) Z; ^# p4 [
输入
& R' X6 G1 \, d9 M: fnetsh interface ipv4 show subinterfaces 查看你各个连接的MTU(一般是1500)
. G, H# T) v! v- D4 B- u' Z, x然后
2 }% @* [- m ?, Xnetsh interface ipv4 set subinterface "本地连接" mtu=1492 store=persistent
7 i4 |7 h& ^, l" b# g. M' i4 z+ d' v
0 l% V7 H* [, ]( H1 S: J
修改完了,去游戏吧~~~
; D; ^& ?- T( w! t: l+ [/ ~: E; ~6 ^" A
那XP用户捉急了。。我们怎么办捏。。
0 \2 p9 _6 {/ P6 m' v好吧。。虽然难度大,但是LZ还是告诉你们
% Y3 J7 l: y, {6 J/ I% F/ n按Win+R组合键,调出“运行”菜单,输入regedit,然后回车;) V. }8 c5 N8 D5 V4 J: i. a
选择“HKEY_Local_Machine>SYSTEM>CurrentControlSet>Services>Tcpip>Parameters>interface”;
( c) o5 \1 ^( ?" A0 _- z在 interface 中下可能有很多项,需要逐个观察键值,会有一个项与你的网卡IP一致,选中该项;
1 Q& t' V) o8 O. ~8 x; C2 H1 g然后在该项上点击右键,选择“编辑>新建>DWORD值”,然后在右侧将其命名为“MTU”;
0 ]4 F& k7 ]" E3 d" g右键点击MTU,选择“修改”,在弹出的窗口中选择“十进制”,填入你得出的合理MTU值即可。 & H `- Z+ h' Q
+ w3 j+ ^& F- Z9 m# IPS:测试的时候不用去ping us.battle.net了 貌似是为了安全拒绝ICMP的。。。所以换个网址吧
B! {! l2 ?8 h; gps2:在测试前别忘记先把路由器的MTU设置成一个较大的数值,别是路由器阻止了你的分包, U9 s; q' f, u, G3 \2 }
4 N9 E. x. G, L |
|