web-dev-qa-db-ja.com

サーバーが再起動したときにIPルールを維持してルーティングする方法

Centos 7サーバーを使用していますが、サーバーを再起動するたびにipルールを保存してルーティングします。

ip rule add from x.x.x.x table 128
ip route add table 128 to y.y.y.y/y dev eth0
ip route add table 128 default via z.z.z.z

前述のルールとルートは、サーバーを再起動すると失われます。つまり、サーバーを再起動するたびに3つのコマンドを実行する必要があります。

サーバーを再起動したときにIPルールとルートを維持する必要があります。

/etc/rc.d/rc.localをご覧ください。ファイルには、「このスクリプトが起動時に実行されるようにするには、「chmod + x /etc/rc.d/rc.local」を実行する必要があることに注意してください。」そう...

chmod +x /etc/rc.d/rc.local

次に、コマンドを最後の行touch /var/lock/subsys/localの上に配置します。

関連する設定ファイルを使用するより良い方法があります。ルールとルートは、対応するファイル名を使用して指定できます。関連するすべての構成ファイルを以下に示します。 (デバイス名は異なる場合があります。)

/etc/iproute2/rt_tables
/etc/sysconfig/network
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/network-scripts/ifcfg-eth1
/etc/sysconfig/network-scripts/route-eth0
/etc/sysconfig/network-scripts/route-eth1
/etc/sysconfig/network-scripts/rule-eth0
/etc/sysconfig/network-scripts/rule-eth1

名前付きルーティングテーブルを作成するには、/etc/iproute2/rt_tablesを使用します。 128 mynetを追加しました。

#
# reserved values
#
255     local
254     main
253     default
0       unspec
#
# local
#
128     mynet

EL 7.x /etc/sysconfig/networkファイル。デフォルトのルートはGATEWAYです。

NETWORKING=yes
HOSTNAME=hostname.sld.tld
GATEWAY=10.10.10.1

EL 7.x /etc/sysconfig/network-scripts/ifcfg-eth0ファイル、「HWADDR」と「UUID」なし。これにより、NetworkManagerを使用せずにeth0の静的IPアドレスが構成されます。

DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTOCOL=none
IPADDR=10.10.10.140
NETMASK=255.255.255.0
NETWORK=10.10.10.0
BROADCAST=10.10.10.255

EL 7.x /etc/sysconfig/network-scripts/ifcfg-eth1ファイル、「HWADDR」と「UUID」なし。これにより、NetworkManagerを使用せずにeth1の静的IPアドレスが構成されます。

DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTOCOL=none
IPADDR=192.168.100.140
NETMASK=255.255.255.0
NETWORK=192.168.100.0
BROADCAST=192.168.100.255

EL 7.x /etc/sysconfig/network-scripts/route-eth1ファイル。デフォルトルートは/etc/sysconfig/networkですでに指定されています。

192.168.100.0/24 dev eth1 table mynet
default via 192.168.100.1 dev eth1 table mynet

EL 7.x /etc/sysconfig/network-scripts/rule-eth1ファイル:

from 192.168.100.0/24 lookup mynet
7
Christopher