Linux多个网卡多个网段存在的问题:

1.由于只能配置一个默认网关,所以另外一个口只能配置路由,配置比较复杂;

2.如果不配置的话,会存在往返路由不一致的情况,导致网络不通。


所以,我们可以通过设置多个路由表的方式来实现源进源出,简单写下步骤:

1.nano /etc/iproute2/rt_tables,增加两个网卡(vlan)的两个路由表

251 ens160 #vlan88路由表

252 ens191 #vlan101路由表


2. 给网卡绑定两个地址用于两个vlan

ip addr add 172.16.89.199/23 dev ens160

ip addr add 192.192.101.200/24 dev ens192


3、分别设置ens160和ens191的路由表

ens160路由表:

#确保找到本地子网

ip route add 172.16.88.0/23 via 172.16.89.199 dev ens160 table ens160

#内部回环网络

ip route add 127.0.0.0/8 dev lo table ens160

#172.16.88.254为ens160网络默认网关地址

ip route add default via 172.16.88.254 dev ens160 table ens160


ens192路由表:

#确保找到本地子网

ip route add 192.192.101.0/24 via 192.192.101.200 dev ens192 table ens191

#内部回环网络

ip route add 127.0.0.0/8 dev lo table ens191

#192.192.101.254为ens192网络默认网关地址

ip route add default via 192.192.101.254 dev ens192 table ens191


4、ens160和ens192各有自己的路由表,制定策略,让172.16.89.199的回应数据包走ens160的路由表路由,192.192.101.200的回应数据包走ens192的路由表路由

ip rule add from 172.16.89.199 table ens160

ip rule add from 192.192.101.200 table ens191

至此配置结束。