无法配置 eth0 和 eth1

无法配置 eth0 和 eth1

我有两个物理网络:

eth0 192.168.0.0/24 与多台 PC 和 NAT 地址 192.168.0.1 一起通过 PPPoE 连接到 inet;

eth1 192.168.0.1/24 有几台电脑,没有互联网。

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 192.168.0.2
gateway 192.168.0.1
netmask 255.255.255.0

auto eth1
iface eth1 inet static
address 192.168.1.2
netmask 255.255.255.0

up route add -net 192.168.0.0/24 gw 192.168.0.1 dev eth0
up route add -net 192.168.1.0/24 gw 192.168.1.2 dev eth1

并得到:

Reconfiguring network interfaces...RTNETLINK answers: File exists
Failed to bring up eth1.

我应该添加什么路由,为什么 eth1 失败了?我应该为 192.168.1.0/24 网络添加什么默认网关?有人能帮忙吗?

答案1

据我所知,您应该只有一个网关。所有流量都通过该接口传输到互联网。

route add default gw 192.168.0.1 eth0

應該足够了。

虽然我不确定在 eth0 配置中设置网关时是否需要它。看看路线在您尝试添加它之前,命令列表可能会有一个默认列出。

然后只要你开启了IP转发和iptables,其他电脑都可以通过eth0路由就OK了。

Ubuntu 中的 NAT 设置


如果您需要 2 个子网相互通信,则应配置 iptables 以允许该流量。省略 iptables 命令中的一行应可阻止双向流量。

首先启用 ip 转发echo "1" > /proc/sys/net/ipv4/ip_forward

然后配置iptables。

sudo iptables -A FORWARD -i eth0 -o eth1 -s 192.168.1.0/24 -d 192.168.0.0/24 -j ACCEPT
sudo iptables -A FORWARD -i eth1 -o eth0 -s 192.168.0.0/24 -d 192.168.1.0/24 -j ACCEPT

为了使其永久生效,请执行以下操作。

sudo iptables-save > /etc/iptables.ipv4.nat

将此行添加up iptables-restore < /etc/iptables.ipv4.nat到 /etc/network/interfaces 的底部

然后编辑 /etc/sysctl.conf。

net.ip4.ip_forward = 1

您可以将 iptables-save 文件放在最适合您的任何位置。

相关内容