使用HE Tunnel通过ipv6无法进行https访问

分类:技术备忘 阅读:10105 评论:2

在家里的Mikrotik路由器上使用HE的6to4 Tunnel服务实现了ipv6的接入,但是使用中发现一些网站http可以访问,但是https就无法访问,直接网页就打不开,竟然还包括我自己的网站。。。今天有时间在客户端和服务端同时抓了包,发现客户端的Client Hello正常收发(下图绿色),但是服务端的Server Hello正常发出了但客户端竟然没有收到(下图红色)。。。

第一反应想到的是伟大的长城,但是细想这个是ipv6,应该不受这个限制。HE应该也不会过滤这些消息。突然想到的MTU,搜索了一下,竟然有相同问题(https://forums.he.net/index.php?topic=3545.0),原因就是MTU设置导致的。

找到原因就简单了,打开https://tunnelbroker.net/,在对应的Tunnel管理界面的“Example Configurations“界面看到Mikrotik给出的配置MTU是1280,我看了下我的路由器也确实是1280。又到Tunnel管理界面的“Advanced“界面看了下,原来默认是1480,需要自己改成1280,并且Update!

 

 

 

之后再到自己的路由器上断开重新连接,问题解决~~!

 

已有2位网友发表了看法:

苦咖啡 2017-10-09 21:30:10 回复
怎么灵光一闪想到MTU出问题的啊?这是1%的灵感啊。。。最重要的灵感啊,请教当时的脑回路是怎么想到的?
无为而为 2017-10-10 08:45:52 回复
因为前面看到其他包都是正常的,包括SYN、ACK和数据,就是https的Server Hello数据包在传递过程中出了问题,它又比Client Hello大很多,那就可能是被拆分多个包出了问题,然后为什么会被拆分呢,那就应该是和MTU和MSS有关系了,酱紫 :)
黑咖啡 2017-01-20 16:33:36 回复
zan

发表评论

必填

选填

选填

必填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。