Linux IP ルーティングソースアドレスの選択

Linux IP ルーティングソースアドレスの選択

独立して確認しようとしてきました。このstackoverflowの質問に答えてくださいソースが特定のソースアドレスを要求しない場合、LinuxカーネルがIPパケットにソースアドレスを割り当てる方法です。言及されたコメントの1つこのソースこれには次の文が含まれています。

このヒントがない場合、カーネルは宛先アドレスと同じネットワーク上のインターフェイスに設定された最初のアドレスを選択します。

この文は2つに解釈できると思います。

  • カーネルは、宛先アドレスと同じネットワーク上のインターフェイスを選択し、そのインターフェイスに割り当てられた最初のアドレスを選択します。
  • インターフェイスに割り当てられたアドレスのうち、カーネルは宛先アドレスと同じネットワーク上の最初のアドレスを選択します。

1つ目は文章の無邪気な(つまり純粋に文法的な)解釈だと思いますが、2つ目はカーネルが選択されたと推測する方法です。私の推論は次のとおりです。作業を簡単にするために、このネットワークにゲートウェイ/ルーターがないとします。選択した送信元アドレスが同じネットワークにない場合(最初の説明で可能)、宛先はどのように送信元アドレスに応答(TCP ACKなど)を送信できますか?

どんな説明が正しいですか?

  • 最初の場合、ターゲットはどのように応答をソースに再ルーティングしますか?
  • この動作に関するドキュメントはどこにありますか(可能な限りLinuxのマニュアルページ)?

関連情報