6.9. 为 IPsec VPN 连接配置 TCP 回退


在阻止 UDP 和封装安全 Payload (ESP)协议的限制网络中,标准 IPsec VPN 可能会失败。为确保此类环境中的连接,Libreswan 可以在 TCP 连接中封装所有 VPN 流量,这是 RFC 8229 中所述的方法。

重要

在 TCP 中封装 VPN 数据包可减少吞吐量并增加延迟。因此,只使用 TCP 封装作为回退选项,或者环境中统一阻止了基于 UDP 的连接。

先决条件

  • IPsec 连接已配置。

流程

  1. 编辑 /etc/ipsec.conf 文件,并在 config setup 部分中进行以下更改:

    1. 将 Libreswan 配置为侦听 TCP 端口:

      listen-tcp=yes
      Copy to Clipboard Toggle word wrap
    2. 默认情况下,Libreswan 侦听端口 4500。如果要使用不同的端口,请输入:

      tcp-remoteport=<port_number>
      Copy to Clipboard Toggle word wrap
    3. 如果 UDP 不可用或永久,则决定是否将 TCP 用作回退选项:

      • 作为回退选项,请输入:

        enable-tcp=fallback
        retransmit-timeout=5s
        Copy to Clipboard Toggle word wrap

        默认情况下,Libreswan 在尝试通过 TCP 重新连接前,会等待 60 秒。降低 retransmit-timeout 值会缩短延迟,从而使回退协议可以更快地启动。

      • 作为 UDP 的永久替换,请输入:

        enable-tcp=yes
        Copy to Clipboard Toggle word wrap
  2. 重启 ipsec 服务:

    # systemctl restart ipsec
    Copy to Clipboard Toggle word wrap
  3. 如果您配置了默认 4500 以外的 TCP 端口,请在防火墙中打开端口:

    # firewall-cmd --permanent --add-port=<tcp_port>/tcp
    # firewall-cmd --reload
    Copy to Clipboard Toggle word wrap
  4. 在使用此网关的对等点上重复这个过程。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat