Home > hacking > ADSL拨号+VPN无法访问youtube

ADSL拨号+VPN无法访问youtube

症状

  • 同一ap通过iphone加vpn拨号,可以使用safari浏览facebook和youtube
  • 笔记本(ubuntu 910)用同一vpn账号无法正常访问youtube,但是可以访问picasa,blogspot
  • 笔记本在单位用vpn可以正常访问youtube

调试过程
首先,用firebug发现,youtube可以加载部分内容。后来,用wireshark分析发现有“tcp previous segment lost”的错误。用google搜索到了Tough suspected MTU problem,将vpn的MTU改小到1200后(ip link set mtu <value> dev <device>)可以正常访问。主要问题应该是本地mtu过大不能fit在adsl线路上,当服务器返回一个过大的数据包时,isp无法将这个数据包通过adsl线路发回给客户端,因此被isp丢弃。此时,isp会向服务器发送一个调整MTU的ICMP的信息,但是有时sa会将icmp信息阻断,这样服务器接不到客户端的ack,客户端接不到服务器的数据包,最后客户端超时会发送断开连接reset。更详细的解释可以参考PMTU (Path MTU) Discovery

将vpn的mtu减小后,就会使得client在与server建立tcp连接时设置正确的maximum segment size (MSS),从而就会解决上面的问题。

Advertisements
Categories: hacking Tags:
  1. Da
    June 1, 2010 at 10:41 am

    你真是够折腾的,我是上不了我就不上了事

  2. Lei
    June 3, 2010 at 5:56 am

    我顶你锲而不舍的精神, 哈哈

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: