开始之前,读者需要了解,Linux/Mac设备中在网卡配置文件上配置的网关为默认网关,系统会添加一条默认路由到该网关,即访问0.0.0.0/0段的流量包会从该网关出去。
系统上如有路由表,那么系统会根据路由表的记录,挨个比对路由表中目的地址信息,如有匹配项,那么会通过该条路由出去,如无匹配项,那么会通过默认路由出去。
基于上面的概念我们可以理解,Liunx/mac环境至多配置一个网关,如需实现不同流量访问不同网关,则需要通过静态路由去实现。
首先,需要确定需要访问的目标IP,以及本机所在的二层网络中,哪个网关上有到目标IP的路由信息(即下一跳)。
添加网段(访问10.10.10.0/24网段的流量包通过bond1网卡走192.168.0.254网关出去)
route add -net 10.10.10.0 netmask 255.255.255.0 gw 192.168.0.254 dev bond1
添加host(访问10.10.10.100这个ip的流量包通过bond1网卡走192.168.0.254网关出去)
route add -host 10.10.10.100 gw 192.168.0.254 dev bond1
配置完成后可以再检查下路由表
确认网络达到预期后,可以将静态路由信息写到/etc/sysconfig/network-scripts/route-[网卡名] 实现持久化。