|
发表于 2012-8-19 01:24:23
|
显示全部楼层
如果你用了路由,就一定注意网卡和路由的mtu值,光猫一般可以不用动,! A3 U0 O' Z3 H) A4 | W
如果没用路由器,就没关系。8 C4 G% Z; j8 P" x, {; c
6 \! I6 K( ?7 e) d/ ]1 D我用了磊科的改版路由,支持4WAN口,但是mtu值最高只能设置1492,
/ _+ P5 c. k$ x6 [0 L. z0 R而电脑网卡一般默认1500,! i) I( ~4 b4 p+ E
之前用的是DD路由, mtu值是自动适应的,所以之前玩游戏没有出现一会慢一会正常的现象,( b' @7 A5 Q4 H7 O/ E7 D8 j
后来用了,发现网络响应不稳定,玩暗黑3总是卡,20M+20M的网速的(体验的3个月),7 ?: W- v% J7 {; x6 G% K9 ^7 g: R
查了一些文章才怀疑到mtu值,后来测试了一下, 网卡是1500,路由1492,光猫好像是1500。5 b1 M3 t% q5 @+ ~7 x' L
修改了网卡成1492,后来再上就没有发现这个问题。
" g( ]5 R8 P' U1 a
0 N* _; T" E0 b5 e# X% T! q转帖子内容给你看看; O7 } ^% e6 ^4 _; P$ p; s
+ i1 p7 e; j8 t. y那到底设置多大的MTU好捏,简单的测试下就行
; R% D4 F& F ^, G) x; V首先,把路由器的MTU设置成默认(一般是1492或者1500)" a' \: e+ s( i0 A; `9 V2 K
然后我们开始测试& ^2 x. j# m- J# Q
拿百度举例ping -l 1472 -f www.baidu.com
2 Z2 A+ ]9 {) l6 B-l 代表我们这个PING的ICMP包大小为1472
0 c q; Z# w% y5 r* S-f 代表为强制不拆分包
* }/ J7 ~0 a: p9 x1 U: v+ s( s/ O- i+ P为什么设置1472捏。。嘿嘿,我假设的,猜的! b2 _; W9 J4 s
好了如果PING正常,回应有时间XX MS和TTL 那么我们运营商的MTU设置的比1472大,如果出现需要拆分数据包但是设置DF,就代表运营商MTU比这个数字小
# ]2 U8 H! W# _$ w) b" ?那么我们根据情况增大或者减小这个数值,到什么程度捏?6 K. G1 v9 N# C6 O- s! e* F
到这个数据包正好能传输的大小,也就是说刚好能传输不需要拆分再大1点,就一定需要拆分程度% M7 M' p+ v9 y+ y
一般电信的路由器是14640 R: B$ S5 Y, q! v. _* Z7 e
但是先别急着设置1464 数据传输还是有个叫包头的信息,一般28 所以MTU设置为1464+28=1492
; Y, Q( c3 N( ]7 `好了,把路由器的MTU设置成1492吧
' I6 k: ^% S% b1 T+ ], I% H9 g/ _!!!!!!!!!!!!但是。。。本机的MTU是1500哦,也就是说你的包到了你自己的路由器上依旧被拆分了
3 r; i, Z- m# b8 Q那怎么办捏
3 B* U% z1 u" j8 Q! J4 pWIN7用户2 N4 A2 Q" u+ U; s& |1 n0 O
开始-运行-cmd
5 A( N% k; b- n/ v& f( n5 h- @输入
8 T% n' \* k* \1 X7 lnetsh interface ipv4 show subinterfaces 查看你各个连接的MTU(一般是1500)' ?2 h, C+ q l) D5 C
然后
8 ^& ~- U/ K3 S) z, r3 Jnetsh interface ipv4 set subinterface "本地连接" mtu=1492 store=persistent, o G4 s. j. X
' a3 e- z$ e: r" }' [( v+ D# f+ {. A
7 j" x+ p8 ~9 K修改完了,去游戏吧~~~
) v" A# s! W4 d5 Q0 }
+ s/ O. b9 N) f$ P4 D2 \" y: \8 O那XP用户捉急了。。我们怎么办捏。。
) k; ~7 V0 r1 K5 z' l好吧。。虽然难度大,但是LZ还是告诉你们: V! [1 I1 C. j
按Win+R组合键,调出“运行”菜单,输入regedit,然后回车;) N0 ~2 Z3 v6 Z1 f" ~
选择“HKEY_Local_Machine>SYSTEM>CurrentControlSet>Services>Tcpip>Parameters>interface”;
# T& L, y, v0 d+ y在 interface 中下可能有很多项,需要逐个观察键值,会有一个项与你的网卡IP一致,选中该项;2 S/ u" D) Q! ^7 y# G
然后在该项上点击右键,选择“编辑>新建>DWORD值”,然后在右侧将其命名为“MTU”;
: r2 ]4 S1 V$ [, z# L, t右键点击MTU,选择“修改”,在弹出的窗口中选择“十进制”,填入你得出的合理MTU值即可。 Y- {1 M5 b! s4 x- V3 n- ]1 B1 ]
1 p6 ?" Q* {8 J3 \$ w F+ b* aPS:测试的时候不用去ping us.battle.net了 貌似是为了安全拒绝ICMP的。。。所以换个网址吧 ' Y. |$ w8 H, F: K T- `
ps2:在测试前别忘记先把路由器的MTU设置成一个较大的数值,别是路由器阻止了你的分包% o8 Q8 q6 a/ k" V( [) m" H2 R
4 Y# E' k! [2 Q" e& ^& \ |
|