如何阻止两个接口之间的所有流量?

blu*_*urb 4 linux

假设我在一台主机上有两个接口,eth0 和 eth1。我目前看到的行为是:

在 eth0 上接收流量,它在 eth1 上找到合适的路由并尝试发送它。

我已经在拦截进入 eth0 的数据包,所以我想停止这种转发并丢弃所有进入 eth0 的数据包,而不是在 eth1 上发送它们。

本质上,我想阻止一台主机上两个接口之间的所有流量。这可能与 iptables 或路由吗?

Bil*_*hor 7

您应该能够在内核级别使用sysctl. 将 net.ipv4 和/或 net.ipv6 转发值设置为关闭。

net.ipv4.conf.all.forwarding = 0
net.ipv4.conf.eth0.forwarding = 0
net.ipv4.conf.eth1.forwarding = 0
Run Code Online (Sandbox Code Playgroud)

根据发行版,您可以在启动时通过编辑 /etc/sysctl.conf 或在 /etc/sysctl.d 中添加文件来配置它。通常默认情况下禁用转发,因此您可能有一条启用转发的线路。

一些防火墙构建器将根据配置启用或禁用转发。