Linux中的网关设置-route命令
程序员文章站
2022-01-15 10:59:55
...
在Linux中,是没有网关的,需要设置的只是一条默认路由。
Windows中给出的网关指的是,把不知道去往哪里的数据包交给网关。也就是默认路由的概念。
因此在Linux中设置网关,我们需要设置的只是一条默认路由而已。
如网卡设置的是IP地址通过DHCP获取,一般网关可以正常获取,即路由表中会有默认路由
如果通过nmtui配置了网关,那么路由表中也会有默认路由
route命令查看路由表
[[email protected] ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.33.2 0.0.0.0 UG 100 0 0 ens33
10.1.1.0 0.0.0.0 255.255.255.0 U 100 0 0 ens37
192.168.33.0 0.0.0.0 255.255.255.0 U 100 0 0 ens33
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
解释:因为我有一块网卡ens33是通过DHCP获取的IP地址的,所有会有一条默认路由
上面路由表,ens37这块网卡只有IP地址,没有网关。也给他添加一个网关。
[[email protected] ~]# route del default gw 10.1.1.254
在进行路由表的查看
[[email protected] ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.1.1.254 0.0.0.0 UG 0 0 0 ens37
0.0.0.0 192.168.33.2 0.0.0.0 UG 100 0 0 ens33
10.1.1.0 0.0.0.0 255.255.255.0 U 100 0 0 ens37
192.168.33.0 0.0.0.0 255.255.255.0 U 100 0 0 ens33
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
现在在路由表中有两条默认路由了,这时候Linux会选择哪一条呢?这是由路由表中的metric值来决定的。
Linux会选择metric值小的,也就是说,现在Linux要去的目的地,在他的路由表中没有的,都会把数据包交给ens37
特点总结:
1、用命令route,手动添加的默认路由的优先级是最小的,是0
2、metric值是100的默认路由,是通过nmtui当中配置进去的,系统设置了他的默认优先级是100。
通过route命令添加默认路由,后并且修改Metric值
[[email protected] ~]# route del default gw 10.1.1.254 //先删除之前默认的配置,因为测试下来不会覆盖
[[email protected] ~]# route add default gw 10.1.1.254 metric 101
[[email protected] ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.33.2 0.0.0.0 UG 100 0 0 ens33
0.0.0.0 10.1.1.254 0.0.0.0 UG 101 0 0 ens37
10.1.1.0 0.0.0.0 255.255.255.0 U 100 0 0 ens37
192.168.33.0 0.0.0.0 255.255.255.0 U 100 0 0 ens33
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
注意:以上配置只是临时修改哦,需要永久修改的话,可以用个nmtui或者直接修改配置文件。
上一篇: Linux Route命令
下一篇: 数据库对象视图、索引、游标、触发器简介