【问题标题】:Send all traffic to network interface and receive from other将所有流量发送到网络接口并从其他接口接收
【发布时间】:2025-12-18 02:55:01
【问题描述】:

我正在尝试想象该怎么做: (使用基于 Linux Debian 的发行版)

我有 4 个网卡的电脑:

eth0 = Internet Access (connect to router WAN)
eth1 = Local lan
eth2 = OUT NIC
eth3 = IN NIC

我需要将所有流量从 eth1(本地局域网)发送到 eth2,从 eth3 接收相同的流量并路由到 eth0。

想法是通过 eth2 将所有 eth1 流量发送到外部设备,外部设备检查数据包并在 eth3 上再次发送到 PC,然后我的 PC Linux 将流量路由到 eth0

可以这样做吗?

【问题讨论】:

    标签: linux networking routes intercept bridge


    【解决方案1】:

    您是在 PC 上运行 linux 吗?我们首先需要知道版本。其次,如果您想将流量从一个 NIC 重定向到另一个,您正在研究 IProutes。

    【讨论】:

    • 对不起,我忘了提到我有基于 Linux Debian 的 disto。我需要在路由过程之前将所有流量发送到 eth2,然后通过 eth3 接收相同的流量,然后......路由到最终目的地。我需要将所有流量发送到其他外部设备,然后从外部设备接收并充当路由器。
    • 试试这个网站,它应该会给你你想要的东西。 IP Forwarding
    • 谢谢,但我知道 NAT,我尽量不修改数据包。
    • sudo sysctl -w net.ipv4.ip_forward=1iptables -A FORWARD -i eth1 -o eth2 -j ACCEPTiptables -A FORWARD -i eth3 -o eth0 -j ACCEPT
    • 这只会为允许转发创建一个iptables规则。它不会创建路由规则来实际转发此流量。