Red Hat Training

A Red Hat training course is available for RHEL 8

20.11. 従来のネットワークスクリプトの使用時に、ip-command format で静的ルート設定ファイルを作成

従来のネットワークスクリプトは、静的ルートの設定をサポートしています。

以下の手順では、以下の経路を設定します。

  • リモート 198.51.100.0/24 ネットワークへの IPv4 ルート。IP アドレス 192.0.2.10 の対応するゲートウェイは、enp1s0 インターフェイスを介して到達できます。
  • リモート 2001:db8:2::/64 ネットワークへの IPv6 ルート。IP アドレス 2001:db8:1::10 の対応するゲートウェイは、enp1s0 インターフェイスを介して到達できます。
重要

ゲートウェイ (ネクストホップ) の IP アドレスは、静的ルートを設定するホストと同じ IP サブネット内にある必要があります。

この手順の例では、ip コマンド形式の設定エントリーを使用しています。

前提条件

  • 静的ルートのゲートウェイが、インターフェイスで直接到達できる。
  • NetworkManager パッケージがインストールされていないか、NetworkManager サービスが無効になります。
  • network-scripts パッケージがインストールされている。
  • ネットワーク サービスが有効になっています。

手順

  1. 静的 IPv4 ルートを /etc/sysconfig/network-scripts/route-enp1s0 ファイルに追加します。

    198.51.100.0/24 via 192.0.2.10 dev enp1s0

    198.51.100.0 など、常にリモートネットワークのネットワークアドレスを指定します。198.51.100.1 などのリモートネットワーク内に IP アドレスを設定すると、ネットワークスクリプトがこのルートを追加できなくなります。

  2. 静的 IPv6 ルートを /etc/sysconfig/network-scripts/route6-enp1s0 ファイルに追加します。

    2001:db8:2::/64 via 2001:db8:1::10 dev enp1s0
  3. network サービスを再起動します。

    # systemctl restart network

検証

  1. IPv4 ルートを表示します。

    # ip -4 route
    ...
    198.51.100.0/24 via 192.0.2.10 dev enp1s0
  2. IPv6 ルートを表示します。

    # ip -6 route
    ...
    2001:db8:2::/64 via 2001:db8:1::10 dev enp1s0 metric 1024 pref medium

トラブルシューティング

  • ネットワーク ユニットのジャーナルエントリーを表示します。

    # journalctl -u network

    考えられるエラーメッセージとその原因は次のとおりです。

    • Error: Nexthop has invalid gateway: route-enp1s0 ファイルで、このルーターと同じサブネットにない IPv4 ゲートウェイアドレスを指定しました。
    • RTNETLINK answers: No route to host: このルーターと同じサブネットにない IPv6 ゲートウェイアドレスを route6-enp1s0 ファイルに指定しました。
    • Error: Invalid prefix for given prefix length: ネットワークアドレスではなく、リモートネットワーク内の IP アドレスを使用して、route-enp1s0 ファイルでリモートネットワークを指定しました。

関連情報

  • /usr/share/doc/network-scripts/sysconfig.txt file