我有一个带有两个以太网接口的路由器:
eth0: 1.1.1.2 (with 1.1.1.1 gateway)
eth1: 2.2.2.1
我创建了两个新的虚拟接口:
eth0:1 : 1.1.1.3 (with 1.1.1.1 gateway)
eth1:1 : 2.2.3.1
通常,通过 eth1 连接到路由器的所有其他机器都将具有内部 IP 地址 2.2.2.1/32 和 2.2.2.1 作为默认网关。然后有一堆 iptables 和 tc 规则用于流量控制。这样,连接到路由器的所有机器都将 1.1.1.2 作为其公共 IP 地址。
我想允许一台通过 eth1 连接到路由器的特殊机器,该机器的默认网关为 2.2.3.1(因此实际上只是 eth1:1),其公网 IP 地址为 1.1.1.3。到达 eth1:1 的所有数据包都应转发到 eth0:1,反之亦然。
我正在使用 CentOS。我已启用 IP 转发。
对于此设置我应该使用什么 iptables 规则?
答案1
看起来您应该使用 brctl 创建一个桥,然后使用 ebtables 进行一些数据包处理和过滤。