|
发表于 2012-8-19 01:24:23
|
显示全部楼层
如果你用了路由,就一定注意网卡和路由的mtu值,光猫一般可以不用动,
+ W: l, d2 a$ V3 L1 h5 l5 e6 o/ T如果没用路由器,就没关系。5 v- F7 o9 [/ i' ]7 V& {# e
" [6 y6 i7 z9 I }: h; a5 D9 E# D
我用了磊科的改版路由,支持4WAN口,但是mtu值最高只能设置1492,( f& C. [$ b5 E
而电脑网卡一般默认1500,
, K/ S6 C9 g0 ~1 [; k- c; q之前用的是DD路由, mtu值是自动适应的,所以之前玩游戏没有出现一会慢一会正常的现象,0 {% d( F, [4 @
后来用了,发现网络响应不稳定,玩暗黑3总是卡,20M+20M的网速的(体验的3个月),
; o$ r9 G5 Q+ f" E0 j查了一些文章才怀疑到mtu值,后来测试了一下, 网卡是1500,路由1492,光猫好像是1500。
$ G# ^, U- ~0 {, t修改了网卡成1492,后来再上就没有发现这个问题。; @2 W& h2 o o( a f5 F
) h4 {/ B% I5 U2 T- v3 k转帖子内容给你看看6 n7 V3 {9 Y8 e, e! E8 _
9 K3 K8 y' O1 m0 P* ]0 N2 Z6 O0 n
那到底设置多大的MTU好捏,简单的测试下就行8 \% w$ ?5 {7 x
首先,把路由器的MTU设置成默认(一般是1492或者1500)- l" M& T% h; F) W. k, H
然后我们开始测试( X o: ?; u5 P6 P1 d
拿百度举例ping -l 1472 -f www.baidu.com
. Y# _0 }$ c: t$ T3 Q/ {+ L4 ]-l 代表我们这个PING的ICMP包大小为1472
' c$ _+ f% f: e-f 代表为强制不拆分包
$ F: W9 O0 v9 ?; A/ b" K' ?为什么设置1472捏。。嘿嘿,我假设的,猜的
* T# @& s( ]; |" q8 m好了如果PING正常,回应有时间XX MS和TTL 那么我们运营商的MTU设置的比1472大,如果出现需要拆分数据包但是设置DF,就代表运营商MTU比这个数字小0 ]1 d" \- @% J5 _( \/ S
那么我们根据情况增大或者减小这个数值,到什么程度捏?
9 X- r0 [. ^& x* b2 l. C. `* _到这个数据包正好能传输的大小,也就是说刚好能传输不需要拆分再大1点,就一定需要拆分程度
! v1 _& L2 s4 a& ]+ L" f一般电信的路由器是14642 P" b+ j$ Q' R2 Y$ @ C
但是先别急着设置1464 数据传输还是有个叫包头的信息,一般28 所以MTU设置为1464+28=1492' ]3 l$ w9 s1 B/ z/ d; v
好了,把路由器的MTU设置成1492吧
* t4 l& S$ s- u! h! l. p& H!!!!!!!!!!!!但是。。。本机的MTU是1500哦,也就是说你的包到了你自己的路由器上依旧被拆分了
* F+ s3 k( p! }8 w3 p8 t那怎么办捏+ L' ^0 q- t+ D" a2 m7 b
WIN7用户2 R' Y$ C8 b$ r ]2 P
开始-运行-cmd
0 j+ \0 i; m7 k; m+ K; Z2 Q输入9 p, f, O5 w# |3 y
netsh interface ipv4 show subinterfaces 查看你各个连接的MTU(一般是1500)8 f9 S* s0 ~9 R W6 R8 b% ]1 H w
然后" w6 E7 Y$ o6 z" p5 t/ q7 t5 K2 Q
netsh interface ipv4 set subinterface "本地连接" mtu=1492 store=persistent; V2 B @6 F. c
3 V$ N/ R% E5 ?& A8 \/ v
E" D9 g X5 g0 O- P
修改完了,去游戏吧~~~
" D* q, o$ }6 p: A5 Y* V1 c2 K; m
那XP用户捉急了。。我们怎么办捏。。% H) ~6 h% C$ B0 P
好吧。。虽然难度大,但是LZ还是告诉你们
: Z; f7 P; a* n4 k按Win+R组合键,调出“运行”菜单,输入regedit,然后回车;# [( F" w9 e. P4 K9 p( d$ ~/ K, n
选择“HKEY_Local_Machine>SYSTEM>CurrentControlSet>Services>Tcpip>Parameters>interface”;
: c- L; x5 D4 r- T: T- M% `# J' d) U在 interface 中下可能有很多项,需要逐个观察键值,会有一个项与你的网卡IP一致,选中该项;
' K4 ]5 H* Y" d2 F( D8 C$ e- d然后在该项上点击右键,选择“编辑>新建>DWORD值”,然后在右侧将其命名为“MTU”;7 ~' R. m; E; B& V
右键点击MTU,选择“修改”,在弹出的窗口中选择“十进制”,填入你得出的合理MTU值即可。
6 e/ {: D$ i3 @( ]# q2 l( L
, Y% D: [9 q/ E+ c4 XPS:测试的时候不用去ping us.battle.net了 貌似是为了安全拒绝ICMP的。。。所以换个网址吧
) h }4 [' @* H' A& Yps2:在测试前别忘记先把路由器的MTU设置成一个较大的数值,别是路由器阻止了你的分包 a0 G* Z; T X' p
* y* B% U3 f% E9 ~5 B* I7 q% H" } |
|