私はたくさんグーグルしましたが、それでもcentOS 7で永続的なルートを作成する方法に関する実用的な方法が見つかりません。
[root@asd network-scripts]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 172.23.40.1 0.0.0.0 UG 1024 0 0 enp10s0f1
172.23.40.0 0.0.0.0 255.255.255.0 U 0 0 0 enp10s0f1
enp10s0f0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet6 fe80::226:55ff:fed1:9123 prefixlen 64 scopeid 0x20<link>
ether 00:26:55:d1:91:23 txqueuelen 1000 (Ethernet)
RX packets 1096 bytes 291485 (284.6 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 12 bytes 2040 (1.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 34 memory 0xfbfe0000-fc000000
enp10s0f1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.23.40.77 netmask 255.255.255.0 broadcast 172.23.40.255
inet6 fe80::226:55ff:fed1:9122 prefixlen 64 scopeid 0x20<link>
ether 00:26:55:d1:91:22 txqueuelen 1000 (Ethernet)
RX packets 2865 bytes 457736 (447.0 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1995 bytes 345793 (337.6 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 24 memory 0xfbee0000-fbf00000
私がGoogleで検索したすべての場所で、ファイルroute-eth0
の以下のフォルダーで設定するように言われています。しかし、私のファイルはそうではなく、「ifcfg-enp10s0f0」です。ここにこのファイルがあります:/etc/sysconfig/network-scripts
:
-rw-r--r--. 1 root root 321 Sep 15 13:34 ifcfg-enp10s0f1
-rw-r--r--. 1 root root 440 Sep 15 14:44 ifcfg-enp10s0f0
[root@asd network-scripts]#
route-enp10s0f0
のようなファイルを追加しようとしました。 /etc/sysconfig/network
ファイルにルートを追加しましたが、何も機能しません。私がするたびにservice network restart
はすべて消えます!
ifcfg-enp10s0f0
に追加しました:
GATEWAY0=0.0.0.0
NETMASK0=255.255.255.0
ADDRESS0=192.168.0.0
GATEWAY1=0.0.0.0
NETMASK1=255.255.0.0
ADDRESS1=169.254.0.0
何が悪いのですか?
Googleで見つけたものは正しいです。 route ifname)ファイルを作成する必要があります。
コンテンツは「ip」コマンドのようにする必要がありますが、最後の部分のみです。このような:
192.168.1.0/24 via 192.168.2.1
詳細は---(RHEL 7ネットワークガイド を参照してください。
route-eth0
とあるところは、route-enp10s0f0
またはroute-enp10s0f1
と考えてください。
基本的に、route-<interface-name>
ファイルのルーティングルールは、<interface-name>
が呼び出されたときに適用され、<interface-name>
が削除されたときに削除されます。
永続的なIPルートとルールを機能させるには、次の3つのタスクが必要だと思います。
最初に、/etc/iproute2/rt_tables
を編集してルートの新しいルーティングテーブルを作成し、「mytable」をより適切なものに変更できる行を追加します。他のテーブルと比較して100が優先順位です。
100 mytable
次に、ファイルを作成して、インターフェース(eth1など)に必要なルールとルートを指定します(選択したルールとルートは例です。設定に合わせて変更してください)。
/etc/sysconfig/network-scripts/rule-eth1
:
from 10.10.10.244/32 table mytable
to 10.10.10.244/32 table mytable
/etc/sysconfig/network-scripts/route-eth1
:
default via 10.10.10.1 dev eth1 table mytable
最後に、ルートとルールファイルの読み取りを許可するNetworkManagerの拡張機能をインストールして有効にします。
$ Sudo yum install NetworkManager-config-routing-rules`
$ Sudo systemctl start NetworkManager-dispatcher.service`
次に、再起動してすべてが正しいことを確認します。