使 ip Route add 和 ip Rule add 指令在啟動時持續存在

使 ip Route add 和 ip Rule add 指令在啟動時持續存在

我需要使以下兩行持久化,以便它們在伺服器重新啟動時可用,因為我已經證明路由和規則按預期工作AlmaLinux 8(AlmaLinux 基本上與 CentOS 相同)

ip route add default via x.x.x.x dev eno5 src x.x.x.x table 1
ip rule add from x.x.x.x table 1

我所看到的一切都表明我應該能夠在/etc/sysconfig/network-scripts/route-eno5和中創建一個文件default via x.x.x.x dev eno5 src x.x.x.x table 1/etc/sysconfig/network-scripts/route-eno5添加該行,from x.x.x.x table 1但是當我保存它並重新啟動時,這些規則不會應用。

這是否在 AlmaLinux 8 上不受支援並以不同的方式完成,或者我做錯了什麼?

答案1

RHEL 8 及更高版本 - 以及所有衍生發行版,例如 CentOS 和 AlmaLinux - 不再使用舊/etc/sysconfig/network-scripts目錄。正確的解決方案是修改NetworkManager配置。

NetworkManager 可以新增靜態路由和策略路由規則。有一些相關的文檔這裡

在預設的 CentOS 8(串流)安裝中,我的 NetworkManager 設定如下所示:

[root@localhost ~]# nmcli c show
NAME         UUID                                  TYPE      DEVICE
System eth0  5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03  ethernet  eth0

如果我想新增一個策略路由eth0,我會這樣做:

nmcli c mod 'System eth0' \
  ipv4.addresses 10.0.0.10/24 \
  ipv4.routes '0.0.0.0/0 10.0.0.1 table=1' \
  ipv4.route-rules 'priority 100 from 10.0.0.0/24 table 1'

在此範例中,我新增了一個靜態 IP 位址,該位址與使用 DHCP 動態分配的位址不同;在您的情況下,這可能不是必需的,具體取決於您的本地配置。

重啟後介面:

nmcli c down 'System eth0'; nmcli c up 'System eth0'

我現在有:

[root@localhost ~]# ip addr show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 52:54:00:c1:f0:62 brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.10/24 brd 10.0.0.255 scope global noprefixroute eth0
       valid_lft forever preferred_lft forever
    inet 192.168.122.164/24 brd 192.168.122.255 scope global dynamic noprefixroute eth0
       valid_lft 3505sec preferred_lft 3505sec
    inet6 fe80::5054:ff:fec1:f062/64 scope link
       valid_lft forever preferred_lft forever

[root@localhost ~]# ip rule show
0:      from all lookup local
100:    from 10.0.0.0/24 lookup 1
32766:  from all lookup main
32767:  from all lookup default

[root@localhost ~]# ip route show table 1
default via 10.0.0.1 dev eth0 proto static metric 100
10.0.0.1 dev eth0 proto static scope link metric 100

答案2

您可以使用「NetworkManager 文字使用者介面」(nmtui 工具)

# yum install NetworkManager-tui

# nmtui

編輯連接,選擇連接...新增路由路由部分。

相關內容