ubuntu 上的 ipsec 验证发现两个或多个接口,检查 IP 转发 [失败]

use*_*822 12 ubuntu vpn ipsec

Ubuntu 14.04,Openswan U2.6.38/K3.13.0-30-generic

当我运行 ipsec verify 时,我收到此错误。

Two or more interfaces found, checking IP forwarding            [FAILED]
Run Code Online (Sandbox Code Playgroud)

我看到很多相同的问题在四处飘荡。有没有人最终找到解决方案?

当然,我在 sysctl.conf 中启用了 IP 转发 :-)

我已经做了大量的研究,但无法做到这一点。

小智 7

其要点是 Ubuntu AMI 必须使用 NETKEY 堆栈,并且您必须进行配置调整以支持它。您还需要启用 IP 转发。

您将使用/etc/sysctl.conf文件和sysctl命令进行这些更改。这将导致proc文件系统在/proc/sys/net/ipv4/conf/*/send_redirects 等路径中发生更改,但通过编辑此文件,您可以确保在重新启动时反映这些更改。

编辑/etc/sysctl.conf并添加或取消注释以下行:

net.ipv4.ip_forward=1
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.eth0.send_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv4.conf.eth0.accept_redirects = 0
Run Code Online (Sandbox Code Playgroud)

现在使用sysctl命令加载您的新配置:

$ sudo sysctl -p /etc/sysctl.conf
Run Code Online (Sandbox Code Playgroud)

如果你成功了,$ sudo ipsec verify再次运行应该会显示一切[OK]。

希望它能有所帮助。


小智 5

根据Opensswan 邮件列表上的这篇文章,该错误是由旧的 perl 版本引起的,可以忽略。