1. 想要完成的任务
一台计算机上有一个有线网卡和无线网卡,都能够连接到外部网络。在网络的物理链接层建立连接之后,根据网络的设置,需要分别对网络进行默认网关的设置。无论是哪个网卡连接上网络,都设置对应网卡的默认网关,最好不要相互影响。
2. 相关设置的命令
设置网关,之前存在经典的命令route
,后来又有了ip route
命令。由于ip route
是ip
系列的新命令,因此使用此命令先进行尝试。
2.1 ip route
命令
例如,要设置的网关地址为192.168.0.1,设置网关的命令:
ip route add default via 192.168.0.1
如果已经设置存在默认网关的话,再次设置会报错,使用如下命令替换原来设置的默认网关:
ip route replace default via 192.168.0.1
如果原来不存在默认网关,使用替换的命令,也不会报错。
想对单独网卡(eth0
为要设置的接口名称)设置的时候,使用如下命令,发生了报错:
# 报错的设置
ip route add default via 192.168.0.1 dev eth0
但是,应该是存在方法设置的,在《iproute2和tc的高级路由用法》文章有对单独网卡设置网关的某些设置,但是知识水平不足,没有读懂。
2.2 route
命令
对于网卡设置和删除默认的网关存在如下命令:
# 对eth0网口设置默认网关
route add default gw 192.168.0.1 eth0
# 删除eth0网口设置的默认网关
route del default eth0
使用完如上命令之后,设置后通信完全正常。
但是当wlan0
网口也设置或者删除的时候,发现对于eth0
的设置产生了影响。
给我的感觉是系统只存在一个默认的网关,即使是对于不同的网口进行了默认网关的设置。