このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。
デフォルトゲートウェイの設定:routeコマンド
デフォルトゲートウェイの概要
デフォルトゲートウェイの設定は、ネットワークデバイスが他のネットワークと通信するために不可欠な手順です。route
コマンドを使用することで、デフォルトゲートウェイを簡単に設定できますが、このコマンドは現在、非推奨となっており、将来的には廃止される予定です。そのため、恒久的な設定や新しいシステムでは、ip
コマンドやnmcli
コマンドを使用することが推奨されます。
routeコマンドによるデフォルトゲートウェイの設定
route
コマンドを使用してデフォルトゲートウェイを設定する場合、設定は一時的なもので、システムの再起動時にはリセットされます。恒久的に設定を維持するには、ネットワーク設定ファイルを編集するか、nmcli
コマンドを使用して設定を行う必要があります。
routeコマンドの構文とオプション
オプション | 説明 |
---|---|
なし | 現在のルーティングテーブルを表示します。 |
add default gw IPアドレス | 指定したIPアドレスを持つデフォルトゲートウェイを追加します。 |
del default | 現在設定されているデフォルトゲートウェイを削除します。 |
コマンドの使用例と解説(CentOS 7の場合)
routeコマンドは古いコマンドであるため、CentOS 7を使って操作していきます。
1.rootユーザーに切り替える。
・「su -
」コマンドを実行します。
su -
コマンドを使って、rootユーザーに切り替えます。これにより、システム管理者権限でコマンドを実行することができます。
[user01@localhost ~]$ su -
パスワード:
最終ログイン: 2024/08/12 (月) 22:54:38 JST日時 pts/0
[root@localhost ~]#
2.現在のルーティングテーブルを表示する。
・「route
」コマンドを実行します。
このコマンドを実行すると、現在のルーティングテーブルが表示されます。デフォルトゲートウェイが設定されている場合、それが表示されます。
[root@localhost ~]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default gateway 0.0.0.0 UG 100 0 0 enp0s3
10.0.2.0 0.0.0.0 255.255.255.0 U 100 0 0 enp0s3
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
デフォルトゲートウェイが設定されているようですが、宛先のIPアドレスが分りません。
そこで、
・「ip route show
」コマンドを実行します。
デフォルトゲートウェイのIPアドレスが「10.0.2.2」であることが分ります。
[root@localhost ~]# ip route show
default via 10.0.2.2 dev enp0s3 proto dhcp metric 100
10.0.2.0/24 dev enp0s3 proto kernel scope link src 10.0.2.15 metric 100
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1
3.デフォルトゲートウェイを削除する。
以下のコマンドを実行します。
- 「
route del default
」コマンド - 「
route
」コマンド
現在設定されているデフォルトゲートウェイを削除します。これにより、デフォルトルートが無効化されます。
[root@localhost ~]# route del default
[root@localhost ~]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.0.2.0 0.0.0.0 255.255.255.0 U 100 0 0 enp0s3
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
3.デフォルトゲートウェイを設定する。
・「route add default gw 10.0.2.1
」コマンドを実行します。
このコマンドで、192.168.1.1
をデフォルトゲートウェイとして追加します。これにより、他のネットワークとの通信がこのゲートウェイを通じて行われるようになります。
[root@localhost ~]# route add default gw 10.0.2.1
4.ルーティングテーブルを確認する。
デフォルトゲートウェイのIPアドレスが分かるように「ip route show」コマンドを用います。
・「ip route show
」コマンドを実行します。
再度、ルーティングテーブルを表示し、デフォルトゲートウェイが正しく設定されていることを確認します。
[root@localhost ~]# ip route show
default via 10.0.2.1 dev enp0s3
10.0.2.0/24 dev enp0s3 proto kernel scope link src 10.0.2.15 metric 100
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1
5.デフォルトゲートウェイの設定をもとに戻します。
次のコマンドを実行します。
- 「
route del default
」コマンド - 「
route add default gw 10.0.2.2
」コマンド - 「
ip route show
」コマンド
設定したデフォルトゲートウェイを削除して、もともと設定されていたデフォルトゲートウェイに戻します。そして再度、ルーティングテーブルを確認します。
[root@localhost ~]# route del default
[root@localhost ~]# route add default gw 10.0.2.2
[root@localhost ~]# ip route show
default via 10.0.2.2 dev enp0s3
10.0.2.0/24 dev enp0s3 proto kernel scope link src 10.0.2.15 metric 100
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1
まとめ
route
コマンドはデフォルトゲートウェイを設定するための従来のツールですが、非推奨となっており、将来的に廃止される予定です。そのため、ip
コマンドやnmcli
コマンドの使用が推奨されます。これらのコマンドを使用することで、恒久的な設定を行い、再起動後も設定が維持されるようにすることが重要です。