首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >OpenVPN:如何减少每个客户端的路径MTU问题?

OpenVPN:如何减少每个客户端的路径MTU问题?
EN

Server Fault用户
提问于 2014-09-13 09:48:03
回答 1查看 29.8K关注 0票数 23

我们有数十个嵌入式设备安装在客户,都打电话回家,我们的OpenVPN服务。总的来说,这很好,但是我们的一些客户有严重的路径MTU问题。我们对客户修复网络的影响是有限的,所以我们需要OpenVPN来处理。简而言之,我的问题是:

如何在每个客户端基础上减少某些客户端的低路径MTUs,即不使用全局设置来适应所有客户端

的最坏情况。

注意,我们最坏的情况是非常糟糕:路径MTU 576,删除所有片段,不分割自身,不遵守DF-bit。你知道为什么我不愿意在全球范围内解决这个问题。

OpenVPN手册提供了许多与MTU相关的选项,最显著的是--link-mtu, --tun-mtu, --fragment and --mssfix。但它也说

-链接-mtu ...,最好不要设置这个参数,除非你知道你在做什么。-tun- MTU ...最好使用--片段和/或-mssfix选项来处理MTU大小问题。

因此,我开始尝试--fragment--mssfix,但很快就意识到,至少必须设置前者,不仅要设置客户端,还要设置也是服务器端。然后,我通过--client-config-dir查看了服务器端的每个客户端配置,但它说:

以下选项在特定于客户端的上下文中是合法的:--push、-push-reset、-iroute、-ifconfig-push和-config。

没有提到MTU的选择!

以下是我更具体的问题:

  • 为什么link-mtutun-mtu不受欢迎?这些选择的潜在问题是什么?请注意,我是相当舒适的低水平的IP头咀嚼。
  • 为了工作,必须在服务器端镜像哪些选项link-mtu tun-mtu fragment mssfix
  • link-mtu tun-mtu fragment mssfix中哪些选项可以在client-config-dir中使用?
  • 如果所有四个选项都必须是镜像服务器端,并且不能在client-config-dir中使用:是否有任何替代方案来对抗每个客户端的低路径MTU?

备注:

  • 我的部分问题已经问了5年前的这里,但他们还没有得到真正的回答,因此我敢重复他们。
  • OpenVPN服务器目前在Ubuntu12.04上是2.2.1。我们正准备在Ubuntu 14.04上升级到2.3.2
  • Debian7.6上的OpenVPN客户端为2.2.1
  • 我很乐意亲自决定客户的路径-MTU本人
  • 目前,我们无法测试很多服务器端。但是我们正在建造一个完整的单独的试验室,应该很快就准备好了。

我感谢任何有益的建议。

EN

回答 1

Server Fault用户

发布于 2014-12-20 22:54:47

通过将选项mssfix 1300添加到配置文件中,解决了客户端的问题。

从openvpn手册页面:

代码语言:javascript
运行
复制
--mssfix max
    Announce to TCP sessions running over the tunnel that they should limit their send packet sizes such that after OpenVPN has encapsulated them, the resulting UDP packet size that OpenVPN sends to its peer will not exceed max bytes. 

我的解决方案的最初想法来自于personalvpn.org

票数 9
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/628267

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档