デフォルトゲートウェイのポイント

デフォルトゲートウェイのポイント
  • デフォルトゲートウェイとは、PC/サーバなどのホストが他のネットワークへ通信するときに最初にパケットを転送するルータ/レイヤ3スイッチ
  • デフォルトゲートウェイの設定とは、PCのルーティングテーブルにデフォルトルート「0.0.0.0/0」をスタティックルートとして登録すること。デフォルトゲートウェイのIPアドレスがネクストホップアドレスになる
  • 他のネットワークの宛先IPアドレスはデフォルトルートに一致するので、デフォルトゲートウェイへと転送される

デフォルトゲートウェイとは

デフォルトゲートウェイとは、PCやサーバが他のネットワークのホストと通信するときに、最初にパケットを転送するルータやレイヤ3スイッチです。デフォルトゲートウェイは、PCやサーバから見て、他のネットワークへの入り口となります。あるいは、PCやサーバが直接接続されているネットワークからの出口と考えてもよいでしょう。

「gateway」という単語の日本語訳は「入り口」です。
デフォルトゲートウェイは単に「ゲートウェイ」と表現することもよくあります。

ルータやレイヤ3スイッチには、複数のネットワークを相互接続するために、複数のIPアドレスが設定されています。PCやサーバのデフォルトゲートウェイとして設定するべきIPアドレスは、PCやサーバと同じネットワーク上のIPアドレスです。たとえば、以下の図でPCに設定するべきデフォルトゲートウェイのIPアドレスは、PCと同一ネットワークのR1のFa0/0に設定されている192.168.1.1です。

デフォルトゲートウェイの設定例
図 デフォルトゲートウェイの設定例

PC/サーバもルーティングしている

「ルーティング」というと、ルータやレイヤ3スイッチで行うものと思ってしまいます。でも、ルーティングはルータ/レイヤ3スイッチだけで行うのではなく、PCやサーバなどでも行っています。TCP/IPを利用するすべての機器は、ルーティングを行っていることになります。

PCやサーバもルーティングテーブルを持ち、ルーティングテーブルにない宛先ネットワークへはパケットを送信できません。PCやサーバのルーティングテーブルにも必要なルート情報をすべて登録しなければいけません。ただし、ルータやレイヤ3スイッチほど詳細にルーティングテーブルにルート情報を登録していません。PCやサーバのルーティングテーブルには、主に次の2つのルート情報を登録します。

  • 直接接続のネットワーク
  • デフォルトルート(0.0.0.0/0)

PCやサーバから見ると、社内の別のネットワークも、インターネットの膨大な数のネットワークもすべてデフォルトゲートウェイであるルータの先に接続されています。そうしたたくさんのネットワークをPCやサーバでは、すべてデフォルトルートに集約して、ルーティングテーブルに登録していることになります。


デフォルトルートについての詳細は、以下の記事をご覧ください。


デフォルトゲートウェイの設定の意味

PCやサーバなどにデフォルトゲートウェイを設定するということは、ルーティングテーブルにデフォルトルート(0.0.0.0/0)のスタティックルートを設定することに他なりません。0.0.0.0/0のネクストホップアドレスが設定したデフォルトゲートウェイのIPアドレスとなります。なお、直接接続のネットワークは、IPアドレスを設定するとルーティングテーブルに登録されることになります。

そして、PCやサーバはパケットを送信するとき、ルーティングテーブルにしたがっています。PCやサーバは他のネットワークあてパケットをルーティングするためにルート情報を検索すると、最長一致検索によってデフォルトルートが一致します。そのネクストホップであるデフォルトゲートウェイにパケットを転送することになります。

デフォルトゲートウェイの設定の意味
図 デフォルトゲートウェイの設定の意味

最長一致検索の詳細は以下の記事をご覧ください。


PCのルーティングテーブルの例(Windows OS)

PCのルーティングテーブルはWindows OSであればコマンドプロンプトから「route print」または「netstat -r」のコマンドを実行すると確認できます。以下は、Windows 7での「route print」の出力例です。

C:\Users\Gene>route print
===========================================================================
インターフェイス一覧
~省略~

IPv4 ルート テーブル
===========================================================================
アクティブ ルート:
ネットワーク宛先        ネットマスク          ゲートウェイ       インターフェイス  メトリック
          0.0.0.0          0.0.0.0      192.168.1.1    192.168.1.100     25
        127.0.0.0        255.0.0.0            リンク上         127.0.0.1    331
        127.0.0.1  255.255.255.255            リンク上         127.0.0.1    331
  127.255.255.255  255.255.255.255            リンク上         127.0.0.1    331
      192.168.1.0    255.255.255.0            リンク上     192.168.1.100    281
    192.168.1.100  255.255.255.255            リンク上     192.168.1.100    281
    192.168.1.255  255.255.255.255            リンク上     192.168.1.100    281
        224.0.0.0        240.0.0.0            リンク上         127.0.0.1    331
        224.0.0.0        240.0.0.0            リンク上     192.168.1.100    281
  255.255.255.255  255.255.255.255            リンク上         127.0.0.1    331
  255.255.255.255  255.255.255.255            リンク上     192.168.1.100    281
===========================================================================
固定ルート:
  なし

~省略~

他のネットワーク宛てのパケットの送信

PCは、他のネットワークのホストへとパケットを送信するときには、まず、デフォルトゲートウェイへ転送します。そのために、デフォルトゲートウェイのIPアドレスに対するMACアドレスをARPによって解決します。たとえば、以下の図のPCから192.168.100.100というIPアドレスのホストへパケットを送信するときの流れは、以下のようになります。

  1. PCは宛先IPアドレス192.168.100.100についてルーティングテーブルのルート情報を検索します。一致するルート情報はデフォルトルート「0.0.0.0/0」です。そのネクストホップが192.168.1.1(デフォルトゲートウェイ)であることがわかります。
  2. PCは0.0.0/0のネクストホップである192.168.1.1(デフォルトゲートウェイ)のMACアドレスを求めるためにARPリクエストをブロードキャストします。
  3. R1はARPに応答し、MACアドレスを返します。
  4. PCは宛先MACアドレスにR1のMACアドレスを指定して、イーサネットヘッダを付加して168.100.100宛てのパケットを送信します。
  5. R1が168.100.100宛てのパケットを受信し、ルーティングテーブルにしたがってパケットをルーティングします。
他のネットワークのホスト宛ての通信の例
図 他のネットワークのホスト宛ての通信の例

IPルーティングのキホン