openEuler系统添加静态路由的方法
本文记录了在openEuler系统中添加静态路由的方法,用于在复杂网络环境下更灵活地配置主机网络。
一、测试环境信息
1、测试环境的IP地址信息
# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens161: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:50:56:ab:43:84 brd ff:ff:ff:ff:ff:ff
altname enp4s0
inet 192.168.254.253/24 brd 192.168.254.255 scope global noprefixroute ens161
valid_lft forever preferred_lft forever
inet6 fe80::250:56ff:feab:4384/64 scope link
valid_lft forever preferred_lft forever
3: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:50:56:ad:b0:f4 brd ff:ff:ff:ff:ff:ff
altname enp11s0
inet 192.168.17.253/24 brd 10.227.17.255 scope global noprefixroute ens192
valid_lft forever preferred_lft forever
inet6 fe80::250:56ff:fead:b0f4/64 scope link noprefixroute
valid_lft forever preferred_lft forever
4: ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:50:56:ad:ee:e8 brd ff:ff:ff:ff:ff:ff
altname enp19s0
inet 192.168.1.228/24 brd 10.227.1.255 scope global noprefixroute ens224
valid_lft forever preferred_lft forever
inet6 fe80::250:56ff:fead:eee8/64 scope link
valid_lft forever preferred_lft forever
可以看到当前服务器有3张网卡,分别为3段独立的24位掩码地址。
2、测试环境的路由信息
# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default _gateway 0.0.0.0 UG 101 0 0 ens192
192.168.1.0 0.0.0.0 255.255.255.0 U 102 0 0 ens224
192.168.17.0 0.0.0.0 255.255.255.0 U 101 0 0 ens192
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
172.18.0.0 0.0.0.0 255.255.255.0 U 0 0 0 br-6be55c9a276a
192.168.254.0 0.0.0.0 255.255.255.0 U 100 0 0 ens161
可以看到当前服务器仅有一条缺省路由,运行在ens192网卡上,网关在192.168.17.0/24这一段,
ens161网卡上有192.168.254.0/24的本地网络,ens224网卡上有192.168.1.0/24的本地网络。
二、测试目标
现拟有192.168.94.0/24网络,是在ens224网卡上有192.168.1.0/24网络中的网关进行转发,那么就无法通过ens192上的缺省路由来访问,需配置静态路由。
三、配置实作
1、添加静态路由
# nmcli connection modify ens224 +ipv4.routes "192.168.94.0/24 192.168.1.1"
2、重载设置让路由生效
# nmcli c reload
# nmcli c up ens224
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/7)
3、测试连通性
# ping 192.168.94.130
PING 192.168.94.130 (192.168.94.130) 56(84) bytes of data.
64 bytes from 192.168.94.130: icmp_seq=1 ttl=63 time=0.227 ms
64 bytes from 192.168.130: icmp_seq=2 ttl=63 time=0.152 ms
64 bytes from 192.168.94.130: icmp_seq=3 ttl=63 time=0.147 ms
^C
--- 192.168.94.130 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2031ms
rtt min/avg/max/mdev = 0.147/0.175/0.227/0.036 ms
可以看到网络已可达
4、核查路由
# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default _gateway 0.0.0.0 UG 101 0 0 ens192
192.168.1.0 0.0.0.0 255.255.255.0 U 104 0 0 ens224
192.168.17.0 0.0.0.0 255.255.255.0 U 101 0 0 ens192
192.168.94.0 192.168.1.1 255.255.255.0 UG 104 0 0 ens224
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
172.18.0.0 0.0.0.0 255.255.255.0 U 425 0 0 br-6be55c9a276a
192.168.254.0 0.0.0.0 255.255.255.0 U 100 0 0 ens161
可以看到在原有缺省路由外,新增了一条通过ens224网卡外出经192.168.1.1网关连通192.168.94.0/24网络的静态路由。
四、手工配置
检查可以发现,在/etc/sysconfig/network-scripts/目录下,自动生成了名为route-ens224的配置文件,路径及内容如下:
# cd /etc/sysconfig/network-scripts/
# ll
total 20K
-rw-r-----. 1 root root 329 Nov 22 2023 ifcfg-ens161
-rw-r--r--. 1 root root 428 Feb 4 2023 ifcfg-ens192
-rw-r-----. 1 root root 304 Jan 9 10:58 ifcfg-ens224
-rw-r--r--. 1 root root 64 Jan 9 10:58 route-ens224
[root@CTZabbixIPMI10 network-scripts]# cat route-ens224
ADDRESS0=192.168.94.0
NETMASK0=192.168.255.0
GATEWAY0=192.168.1.1
自行编写该文件,然后重载网络,实际上也能以手工配置方式达到相同效果。