ルーティングテーブルは、「iptables」の「ip Route」セクションで構成されていますか?

ルーティングテーブルは、「iptables」の「ip Route」セクションで構成されていますか?

この質問は非常に一般的であり、すでに多くの答えがありますが、まだ理解していません。ルーティング設定はiptablesプロセスの一部ですか?下の図の「ルーティング決定」は、「iproute」ルーティングテーブルで構成されていますか?

ここに画像の説明を入力してください。

ベストアンサー1

私はLinuxカーネルネットワーキングとNetfilterのソースコードを理解していると主張していませんが、それは私が理解しているものです。

ルーティング設定はiptablesプロセスの一部ですか? 短い答えは「はい」です。より長い回答については、下記をご覧ください。

下の図の「ルーティング決定」は、「iproute」ルーティングテーブルで構成されていますか? 短い答えは「はい」です。より長い回答については、下記をご覧ください。

「iptables」はNetfilterとそのHookを構成するコマンドであると思われるので、iptablesの代わりにNetfilterについて説明します。

「ip Route add」を使用して設定されたパスはカーネルネットワークルーティングテーブルに入り、図の「ルーティング決定」はカーネルネットワークルーティングテーブルを使用します。下の画像を見ると協会、公開した図の詳細なバージョンを見つけることができます。図に示すように、「ルーティングの決定」はプロセス内で発生するため、Netfilterプロセスの一部として表示されます。しかし、技術的な内容を知りたい場合は、凡例のカラーコーディングに基づいて、「ルーティング決定」が実際にNF(Netfilter)の一部ではなく「その他のネットワーク」の一部であることがわかります。それでも、「プロセス」の一部とみなすかどうかを決めましょう。

インターフェイスを設定するときに自動的に生成されるローカルパスなど、「ipパスの追加」が追加するよりも、カーネルネットワークルーティングテーブルに多くがあることに注意してください。 A は、ip route show table allこれらの追加パスの一部を表示できます。

私は、「ルーティング決定」がコマンドから得たルーティング応答に関連していると信じていますip route get。コマンドのパラメータに適切な値を使用するとします(一部のネットワーク値が変更された可能性があるため(たとえば、DNATエントリがターゲットアドレスを変更するなど)、NFフローの位置を基準とする)。

   ip route get ROUTE_GET_FLAGS ADDRESS [ from ADDRESS iif STRING  ] [ oif
           STRING ] [ mark MARK ] [ tos TOS ] [ vrf NAME ] [ ipproto PRO‐
           TOCOL ] [ sport NUMBER ] [ dport NUMBER ]

ネットワーク名前空間は、使用されるカーネルネットワークテーブルと通過するNetfilterルールに影響を与える可能性があります。

おすすめ記事