質問: ルーティングテーブルでネクストホップはどのように定義されていますか? ルーティングテーブルには、ネクストホップのある宛先lanアドレスだけが含まれていますか?しかし、この例を見ると、このネクストホップはどういう意味ですか ネクストホップがどのように定義されるかについての一般的なルールはわかりません。 (ネットワーク宛先10.0.0.0、11.0.0.0、13.0.0.0については理解しましたが、他のものについては理解していません)また、コマンド 'ip route add <> src <> via <>を使用していますが、<>には何が必要ですか? linuxboxをvirtualboxの仮想マシンとして使用しています
回答: 私の推測では、「rtnetlink応答:無効な引数」エラーは、ipアドレス、マスク、およびゲートウェイのいずれかが同じクラス(クラスaまたはbまたはc)ではないためです。または、「静的」アドレスが一部のdhcp範囲のアドレスと競合するため。スキーマ内のr8のテーブルはルーティングテーブルではありませんが、r8がアドレスをどのように処理するかを説明しています。たとえば、10.0.0.0とある場合、これはipアドレスではなく、10.0.0.0/24ネットワークセグメントを意味していると解釈してください。16.0.0.0/24などのr8から直接アクセスできないサブネットワークの場合、ルーティングテーブルはメッセージをターゲットネットワークに最も近いルーターに転送し、そのルーターは独自の方法に従ってメッセージを渡しますルーティングテーブル。この場合、16.0.0.x宛てのメッセージはゲートウェイ10.0.0.2に渡されます。これはr7のアドレスで、正しい受信者に転送されます。r8で実行されるルーティングコマンドは次のようになります。ip route add 16.0.0.0/24 via 10.0.0.2 src 10.0.0.1 srcパラメータは、マルチホームホストにルートを追加するときに使用され、ホストからの送信元ipアドレスを制御します。単純な場合は省略できます。これにより、ここでは確実に戻りメッセージが10.0.0.0/24サブネットワーク経由で返されますが、何らかの理由でr7がそのサブネットワーク経由でメッセージを返さないようにする場合は、他の値を使用できます。あなたが与えているsrcはあなたの側で発生したトラフィックにのみ影響することに注意してください。外部パケットがルーティングされている場合、それは明らかに送信元ipアドレスをすでに持っているため、通常は変更されずに渡されます(natを使用しない限り、これもオーバーライドできます)。一般に、すべての宛先にルートを指定する必要はありません。コンピューターがルーティングテーブルでデフォルトゲートウェイを指定できるのと同じように、コンピューターは知らないアドレスへのすべてのメッセージを受信するキャッチオールアドレスであり、ルーターはゲートウェイを含むことができる独自のルーティングテーブルを持っています。ルーターのゲートウェイアドレスは、デフォルトルート0.0.0.0で表されます。ネットワークにゲートウェイ回路をセットアップすることさえ完全に可能であることに注意してください。例えば: r1➝r4➝r8➝r7➝r6➝r2➝r1。 ホップ数はここでは最適化されていませんが、メッセージはすべてのサブネットワークから他のすべてのサブネットワークに到達します。ホップの数を最小限に抑えるために、優れたネットワーク設計には通常、1つ以上の集中型ルーターが含まれます。