RedHat-スタティックルートの設定

RHELでのスタティックルート設定

RHELでスタティックルートを設定するには、routeコマンド(ip route)で追加するか、ルーティング設定ファイルに直接記述します。


スタティックルーティングとは

スタティックルートとは、ネットワーク管理者が手動操作で固定的に設定した、宛先ネットワークへの最適なルート(経路)のことです。


通常、ネットワークの経路情報は、ルータ同士がルーティングプロトコルなどで情報を交換し合い自動的に構築します。

スタティックルートを設定することで、特定の宛先IPアドレスへは特定の経路を通すよう指示できます。

また、スタティックルート情報は、他のルータへ通知されることはありません。ネットワーク状態に変化があっても、他に有効な宛先ルートがあっても自動的にそのルートに切り替わることはありません。


ルーティング設定の確認

routeコマンドで現在のルーティングテーブルを確認します。


# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.24.0    0.0.0.0         255.255.255.0   U     1      0        0 eth0
192.168.10.0    *               255.255.255.0   U     0      0        0 eth1

デフォルトゲートウェイが設定されていれば、「default」という名前の行が表示されます。


routeコマンドによるルーティング設定

routeコマンドで設定した場合、ホストを再起動した際に設定が無効になります。


route addコマンド

経路をルーティングテーブルに追加するには「route add」コマンドを用います。


route add -net [宛先IPアドレス] ¥
           gw [ゲートウェイアドレス] ¥
           metric [メトリック] ¥
           netmask [サブネットマスク] [インターフェース]

実行時に下記エラーが発生した場合には、NICの状態を確認します。


# route add -net 192.168.10.0/24 gw 192.168.10.254
SIOCADDRT: そのようなプロセスはありません

ifconfig等でネットワーク設定を確認し、IPアドレスの再設定やインタフェースのUPを行う必要があります。

  • 正しいIPアドレスが割り当てられているが、インタフェースがUPしていない。
  • そもそもIPアドレスが割り当てられいない。
  • IPアドレスが、デフォルトゲートウェイに指定したアドレスと別セグメントである。

route delコマンド

追加した経路を削除するには、「route del」コマンドを用います。


route del -net [宛先IPアドレス] netmask [サブネットマスク]

デフォルトゲートウェイの追加/削除

デフォルトゲートウェイを追加するには以下のコマンドを実行します。


route add default gw [IPアドレス]

デフォルトゲートウェイを削除するには以下のコマンドを実行します。


route del default gw [IPアドレス]

ルーティング設定ファイルを編集する。

OS再起動時に設定を反映できるように、恒久的な設定を行うには以下の設定ファイルを編集します。


/etc/sysconfig/network-script/route-eth[x] 

記述方法は下記の通りです。


宛先IPアドレス via ゲートウェイアドレス

スタティックルーティング設定例

例として、「192.168.2.0/24」を追加する設定を行います。


# vi /etc/sysconfig/network-scripts/route-eth0
192.168.2.0/24 via 192.168.1.254

必要に応じてパーミッション設定を行います。


# chmod 600 /etc/sysconfig/network-scripts/route-eth0
# chown root:root /etc/sysconfig/network-scripts/route-eth0

ネットワークインターフェースを再起動して、設定を反映します。


# /etc/init.d/network stop
# /etc/init.d/network start 

デフォルトゲートウェイ

デフォルトゲートウェイの設定は「/etc/sysconfig/network」を編集すること設定します。


# vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=jihl.wirerose
GATEWAY=192.168.50.1