OpenVPN:如何缓解每个客户端的pathMTU问题?
我们在客户端安装了数十个embedded式设备,所有这些都为我们的OpenVPN服务提供了回报。 总的来说,这样做的效果很好,但是我们的一些客户有严重的pathMTU问题。 我们对客户修复networking的影响是有限的,所以我们需要OpenVPN来处理它。 简而言之,我的问题是: 我该如何缓解一些客户端的每个客户端的低pathMTU,即不使用全局设置来适应所有客户端的最坏情况 请注意,我们最坏的情况下,它很糟糕:pathMTU 576,丢弃所有的片段,不片段本身,不尊重DF位。 你明白为什么我不想在全球范围内解决这个问题。 OpenVPN的联机手册提供了许多MTU相关的选项,最值得注意的是–link-mtu, –tun-mtu, –fragment and –mssfix 。 但它也说 –link-mtu […]最好不要设置这个参数,除非你知道你在做什么。 –tun-mtu […]最好使用–fragment和/或–mssfix选项来处理MTU大小问题。 所以我开始尝试使用–fragment和–mssfix但很快就必须认识到,至less前者必须不仅设置在客户端,而且还要设置在服务器端 。 然后,我通过–client-config-dir查看了服务器端的每个客户端configuration,但它说 以下选项在客户端特定的上下文中是合法的: – push, – push-reset,–iroute,–ifconfig-push和–config。 没有提到MTU选项! 所以这里是我更具体的问题: 为什么link-mtu和tun-mtu不鼓励? 这些选项有什么潜在的问题? 请注意,我对低级IP标头消除非常舒服。 哪个选项link-mtu tun-mtu fragment mssfix必须在服务器端进行镜像才能工作? 哪个选项可以在client-config-dir使用link-mtu tun-mtu fragment mssfix ? 如果所有四个选项都必须镜像服务器端,并且不能在client-config-dir :是否有任何替代scheme可以对付每个客户端的低pathMTU? 笔记: 我的部分问题已经在5年前问过了 ,但是当时还没有回答,所以我敢重复。 OpenVPN服务器目前在Ubuntu 12.04上是2.2.1。 我们正准备在Ubuntu 14.04上升级到2.3.2 在Debian 7.6上,OpenVPN客户端是2.2.1 我很高兴自己手动确定客户的path-MTU 目前我们无法testing多less服务器端。 但是我们正在build造一个完整的独立testing平台,应该尽快准备好。 […]