web-dev-qa-db-ja.com

ルーターはどのようにしてデフォルトゲートウェイを見つけますか?

アドレス解決プロトコルと、それがサブネット上のすべてのデバイスにブロードキャストして宛先のMACアドレスを見つける方法を理解しています。コンピューターがARPを介して宛先を見つけることができない場合、コンピューターは別のサブネット上にある必要があると判断して、ルーターに送信します。

宛先が実際に地球の半分にあり、ルーターがISPルーターにホップする必要がある場合、ルーターは最初にデフォルトゲートウェイのIPアドレスをどのように見つけますか?

2
user4191887

最初の段落は正しくありません、それは逆です。

ARPは、宛先が現在のネットワーク上にあることがわかっている場合に使用されます。シーケンスは次のようになります。

宛先のルーティングテーブルを確認してください

ルーティングテーブルは特異性の順にテストされるため、エントリ192.0.0.0/8と192.168.0.0/16はどちらも192.168.1.1と一致しますが、2番目のエントリはより具体的な一致です。 0.0.0.0/0はすべてに一致し、デフォルトルートです。

接続またはルーティングされていますか?

一致するルートは、接続されたネットワーク(送信側デバイスが同じネットワーク上にIPアドレスを持っている)であるかどうかのいずれかです。接続されている場合、arpが発行され、MACアドレスが取得され(デバイスが存在すると想定)、パケットはレイヤー2(イーサネット)に渡されて送信されます。

ネットワークが接続されたネットワークでない場合は、ゲートウェイIPアドレスがあります。そのIPアドレス必須接続されたネットワーク上にある必要があります。この場合も、取得したMACアドレスのゲートウェイIPアドレスに対してarpが発行され、パケットはレイヤー2に渡されてゲートウェイIPに送信されます。

ネクストホップで

そこに到達すると、まったく同じプロセスが実行されます。ゲートウェイは、接続されたインターフェイスに宛先IPアドレスを持っているか、別のルーターに渡します。

ルーティングテーブルの作成

ルーティングテーブルにデータを入力する方法はたくさんあります。接続されたネットワークのルートは、常にインターフェイスアドレスに基づいてOSによって構成されます。 DHCPが使用されている環境では、IPアドレスがインターフェイスに発行され、通常、デフォルトゲートウェイが付属しています。したがって、DHCPが実行されると、デバイスには接続されたネットワークルートとデフォルトルートがあります。

より基本的な設定は静的です。デバイスには、構成に静的に割り当てられたIPアドレス、デフォルトゲートウェイ、およびおそらくいくつかの静的ルートがあります。これらはすべて、デバイス自体で手動で構成されます。

動的ルーティング

明らかに、インターネットのように複雑なものを扱う場合、静的ルートを手動で追加することは難しい提案です。それはまだいくつかのレベルで発生しますが、すべてが動的ルーティングプロトコルによって支援されます。これは事実上、ルーターが一連のIPアドレス範囲を「所有」し、これを他のルーターと通信する場所です。すべてのルーターは相互にルーティングを学習します。

これが意味することは、ISPが新しいIP範囲を取得し、それを構成に追加し、ネットワークからアドバタイズすることができ、インターネットの他の部分はそれ以上の構成を必要とせずにそれを学習するということです。

免責事項

この説明全体は、発生する内容を簡略化したものであり、プロセスの展開方法を変更する可能性のある多くの例外、警告、およびさまざまなテクノロジーがありますが、これが基本レベルでの動作方法であることに注意してください。

3
Paul

これがDHCPサーバーの出番です。DHCPサーバーは、IP 255.255.255.255を使用してネットワーク上で検出要求を送信し、ソースIPはまだ自分のIPを知らないため、0.0.0.0です。

ただし、ここでMACアドレスが機能し、Discoverパケットがデータリンク層イーサネットフレームにカプセル化されて、ターゲットMACアドレスのFF:FF:FF:FF:FF:FFになり、送信元はネットワークインターフェイスMACになります。アドレスはです。

FF:FF:FF:FF:FF:FFのパケットを受信する最初のスイッチは、FF:FF:FF:が誰であるかわからないため、元のスイッチポートを除くすべてのスイッチポートからその検出パケットを転送します。 FF:FF:FFは、DHCPサーバーがそれを認識するまでのいずれかです。 DHCPサーバーが最初のスイッチである場合、スイッチはDHCPサーバーであるため、要求を転送しません。このフレームを受信し、誰が接続しているかわからないため、IP255.255.255.255に情報を送り返します。ソースIPは0.0.0.0ですが、それらに接続したMACアドレスを知っているため、オファーパケットをカプセル化します。ソースMACはdhcpサーバーであり、宛先MACは、検出パケットを送信したデバイスと送信されたデバイスです。ユニキャストであり、ブロードキャストとしてではありません。

次に、デバイスは、リースの要求よりもこのオファーを受け取り、DHCPサーバーはリースを確認します

また、デフォルトゲートウェイが通信が他のデバイスを経由する必要があることを意味する場合、通常はルートが静的に設定されていることを意味します。つまり、特定の設定ではデバイスが不可能になるため、動的ルートではなく手動で設定されます。どのデバイスが実際にデフォルトゲートウェイであるかを知っています。

3
Frostalf

インターネット接続の大部分は、PPP-DSLの場合はPPPoA、ケーブルの場合はPPPoE)の形式を使用します。

PPPはポイントツーポイントプロトコル(結局のところその名前です)であるため、デフォルトゲートウェイは常にPPP接続のもう一方の端にあるものになります。

それが何であるかであるため、これを検出する必要はありません。唯一の問題は、PPP接続のリモートエンドをデフォルトゲートウェイとしてアクティブに使用するかどうかです。これは通常、使用します。

1
Majenko