这是每个接口启用 IP 转发的正确方法吗?

这是每个接口启用 IP 转发的正确方法吗?

我不希望为所有接口启用 IP 转发(我在此主机上使用 Snort 内联,IPS 接口不得转发)。我需要为默认 NAT 接口后面的 KVM 客户机启用 IP 转发。

我添加了以下内容/etc/rc.local

# default I know, Just in case...
sysctl net.ipv4.ip_forward=0
# enable forwarding for KVM guests
echo 1 > /proc/sys/net/ipv4/conf/virbr0-nic/forwarding
echo 1 > /proc/sys/net/ipv4/conf/virbr0/forwarding
echo 1 > /proc/sys/net/ipv4/conf/eth0/forwarding

这似乎有效。我只是想看看是否有更好的方法?

如果未在默认 NAT 接口后面的 KVM 客户机中添加最后 3 行,/etc/rc.local则无法访问 Internet。

答案1

您所描述的内容是 sysctl.conf 文件中的内容

net.ipv4.ip_forward=0
net.ipv4.conf.eth0.forwarding=1
net.ipv4.conf.virbr0.forwarding=1 
net.ipv4.conf.virbr0-nic.forwarding=1

根据 Michael Hampton 的回复,如果网络设置为 nat 网络,libvirt 应该会为您执行此操作。Libvirt 通常还会添加防火墙规则。

相关内容