我正在尝试在 ubuntu 核心映像上启动时激活 ip 转发。我可以运行以下命令:
sudo sysctl -w net.ipv4.ip_forward=1
成功了。然后我重启机器,转发就消失了。在 ubuntu 服务器上,我可以更新文件 /etc/sysctl.conf 。
该文件在 ubuntu-core 中是“只读”的。
在 ubuntu 核心中添加 IP 转发的“首选”方式是什么?
// 米克
答案1
如果您具有超级用户权限,则可以编辑具有任何权限的任何文件。/etc/sysctl.conf
使用您最喜欢的编辑器打开(vi
,nano
等)查找字符串#net.ipv4.ip_forward=1,删除前导#符号,保存更改。然后运行sudo sysctl -p
。
此外,您可以重新启动机器以确保更改生效。
答案2
中的配置文件/etc/sysctl.d/
可在最新的 Ubuntu Core 上进行读写。
在 Ubuntu Core 18 上,我刚刚测试在这里添加一行 - sudo vi /etc/sysctl.d/10-snapd-network.conf
:
# manually adding ip forwarding
net.ipv4.ip_forward=1
-> 这样就成功了。
注意:如果能够这样做可能会更简洁snap set system network.ipv4-ip-forward=true
,例如snap set system network.ipv6-disable=true
但目前看来这还不可能。