「IP フォワーディング」は「ルーティング」と同義です。 Linux カーネルの機能であるため、「カーネル IP 転送」と呼ばれます。
ルーターには複数のネットワーク インターフェイスがあります。別のネットワーク インターフェースのサブネットと一致する 1 つのインターフェースでトラフィックが受信されると、ルーターはそのトラフィックを他のネットワーク インターフェースに転送します。
したがって、2 つの NIC があり、1 つ (NIC 1) がアドレス 192.168.2.1/24 にあり、もう 1 つ (NIC 2) が 192.168.3.1/24 であるとします。転送が有効で、「宛先アドレス」が 192.168.3.8 のパケットが NIC 1 に着信すると、ルーターはそのパケットを NIC 2 から再送信します。
インターネットへのゲートウェイとして機能するルーターには、どの NIC にも一致しないトラフィックがデフォルト ルートの NIC を通過するデフォルト ルートがあるのが一般的です。したがって、上記の例では、NIC 2 でインターネットに接続している場合、NIC 2 をデフォルト ルートとして設定すると、192.168.2.0/24 を宛先としない NIC 1 からのトラフィックはすべて通過します。 NIC 2 経由。NIC 2 の先に、さらにルーティングできる他のルーターがあることを願っています (インターネットの場合、ネクスト ホップは ISP のルーターであり、プロバイダーの上流ルーターなどです)。
ip_forward
を有効にする これを行うように Linux システムに指示します。意味のあるものにするためには、2 つのネットワーク インターフェイス (2 つ以上の有線 NIC カード、Wifi カードまたはチップセット、56k モデムまたはシリアル経由の PPP リンクなど) が必要です。
ルーティングを行う場合、セキュリティは重要であり、Linux のパケット フィルター iptables
はここにあります。 、関与します。したがって、iptables
が必要になります。 ニーズに合った構成。
iptables
で転送を有効にすることに注意してください 無効にしたり、ファイアウォールやセキュリティを考慮に入れなかったりすると、NIC の 1 つがインターネットまたは制御できないサブネットに面している場合、脆弱性にさらされる可能性があります。
「IP 転送」を有効にすると、Linux マシンは着信パケットを受信して転送できます。通常のホストとして機能する Linux マシンは、IP 転送を有効にする必要はありません。これは、独自の目的 (つまり、ユーザーの目的) のために IP トラフィックを生成および受信するだけだからです。
ただし、IP 転送が役立つ場合もあります。1.マシンがルーターとして機能し、他のホストからパケットを受信して宛先にルーティングする必要があります.2.私たちは悪者であり、いわゆる「中間者攻撃」で別のマシンになりすますことを望んでいます。この場合、被害者に向けられたすべてのトラフィックを傍受して確認したいのですが、被害者が私たちの存在を「感知」しないように、このトラフィックを被害者にも転送したいと考えています。