ルーティングテーブルの説明

ルーティングテーブルの説明

最近、Linux管理証明書について学びました。以下のようにルーティングに関する質問を見つけました。

# route
Kernel IP routing table
+----------------+-------------+----------------+------+------+
|Destination     |Gateway      |Genmask         |Flags |Inface|
+----------------+-------------+----------------+------+------+
|192.168.180.128 |*            |255.255.255.192 |U     |eth1  |
|192.168.40.0    |*            |255.255.255.0   |U     |eth0  |
|192.168.0.0     |*            |255.255.0.0     |U     |eth2  |
|Default         |192.168.40.2 |0.0.0.0         |UG    |eth0  |
+----------------+-------------+----------------+------+------+

答え(太字は良い答え):

A. 192.168.180.180 へのトラフィックは eth1 経由でルーティングされます。
B. 192.180.240 へのトラフィックは eth1 経由でルーティングされます。
C. 192.168.0.42 へのトラフィックは eth2 経由でルーティングされます。
D. 192.168.42.42 へのトラフィックは eth2 経由でルーティングされます。
E. 192.168.42.42 へのトラフィックは eth0 経由でルーティングされます。
F. 192.168.180.180 へのトラフィックは eth0 経由でルーティングされます。

私は基本的なルーティング知識を持っており、一般的なルールは次のとおりです。

  1. リストを上から下にスキャンします。
  2. 一致するものがない場合、デフォルトの一致が使用されます。
  3. 複数の回線が一致する場合、ゲートウェイが最も長い回線が使用されます。

しかし、表示された回答は理解できません。誰かがこれを説明できますか?

  1. 192.168.180.240がeth1を介してルーティングされないのはなぜですか?
  2. 192.168.42.42がeth2経由でルーティングされる理由

ベストアンサー1

マスクについて簡単で(やや単純な)説明をすることが適切に見えます。アドレス(例:192.168.180.128)とマスク(例:255.255.255.192)が与えられると、マスクの0ビットはアドレスのどのビットが異なる可能性があるかを示します。 255のすべてのビットは1なので、最初の3つのオクテットは異なることはできません。 4番目のオクテットである192_10 = 1100 0000_2では、最初の6ビットは0なので、このビットのみを変更できます。

192.168.180.240の場合、ビット7も異なります(240_10 = 1111 0000_2および128_10 = 1000 0000_2)。これを許可するには、マスクが255.255.255.128以上でなければなりません。したがって、そのゲートウェイを介してルーティングすることはできません。 128と180ではビット3、5、6のみが異なるため、192.168.180.180が適しています。

同様に、192.168.42.42には192.168.40.0よりもマスク255.255.254.0が必要です。マスクが 255.255.0.0 の 192.168.0.0 に収まるので、これがルーティングされる方法です。

おすすめ記事