在ubuntu上进行ipsec验证找到两个或多个接口,检查IP转发[FAILED]


12

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

当我运行ipsec验证时,出现此错误。

Two or more interfaces found, checking IP forwarding            [FAILED]

我看到很多同样的问题浮出水面。有人终于找到了解决方案吗?

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

我已经做了大量的研究,只是做不到。

Answers:


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

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

$ sudo sysctl -p /etc/sysctl.conf

如果成功,$ sudo ipsec verify再次运行应该显示所有内容[确定]。

希望它能有所帮助。


我在dcoker容器中运行它,我添加了为Strongswan ipsec调用的所有内核模块,但是它仍然给我错误 /usr/sbin/ipsec: unknown IPsec command verify (ipsec --help for list)
Syed Saad Ahmed

5

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


知道他们所指的是哪个Perl旧版本会很有趣。
亚当-E

2

这篇文章为我解决了:

  • 回声0> / proc / sys / net / ipv4 / ip_forward
  • ipsec验证

是的,但是如果不修改相关的sysctl配置文件,它将不会在重新启动时持续存在。
Valerio Bozz
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.