カーネルIP転送とは何ですか?


70

多くのブログで、Linuxで多くのネットワークセキュリティ/スニッフィングツールを使用しながら、このコマンドを使用してIP転送を有効にしていることを確認しました。

echo 1 > /proc/sys/net/ipv4/ip_forward

誰もが素人の言葉で私を説明できますか、このコマンドは本質的に何をしますか?システムをルーターに変えますか?


回答:


77

「IP転送」は「ルーティング」の同義語です。Linuxカーネルの機能であるため、「カーネルIP転送」と呼ばれます。

ルーターには複数のネットワークインターフェイスがあります。別のネットワークインターフェースのサブネットと一致する1つのインターフェースにトラフィックが着信すると、ルーターはそのトラフィックを他のネットワークインターフェースに転送します。

したがって、2つのNICがあり、一方(NIC 1)がアドレス192.168.2.1/24にあり、もう一方(NIC 2)が192.168.3.1/24であるとします。転送が有効になっていて、「宛先アドレス」が192.168.3.8のNIC 1にパケットが到着すると、ルーターはそのパケットをNIC 2から再送信します。

インターネットへのゲートウェイとして機能しているルーターがデフォルトルートを持っていることはよくあります。これにより、どのNICとも一致しないトラフィックはデフォルトルートのNICを通過します。したがって、上記の例では、NIC 2にインターネット接続がある場合、NIC 2をデフォルトルートとして設定し、NIC 1から入ってくるトラフィックが192.168.2.0/24に向けられていない場合、 NIC 2を介してさらにルーティングできる他のルーターがあることを願っています(インターネットの場合、次のホップはISPのルーターで、プロバイダーのアップストリームルーターなどです)。

有効にするip_forwardと、Linuxシステムにこれを行うように指示します。意味を持たせるには、2つのネットワークインターフェイス(2つ以上の有線NICカード、Wifiカードまたはチップセット、56kモデムまたはシリアル経由のPPPリンクなど)が必要です。

ルーティングを行う場合、セキュリティが重要であり、そこでLinuxのパケットフィルターiptablesが関与します。そのため、iptablesニーズに合った構成が必要になります。

iptablesNICの1つがインターネットまたは制御できないサブネットに面している場合、ファイアウォールやセキュリティを考慮せずに、またはファイアウォールを無効にして転送を有効にすると、脆弱性が生じる可能性があります。


2
右、NIC 2がプライベートIPの場合、NATを実行します。LinuxもNATを行うことができiptables、それを設定する方法です。
ローレンス

NIC 2からNIC 1に移動するデータにNATが必要ですか?
GutenYe

2
通常、NATはLANからWANに機能するため、NIC 2にプライベートIPがあり、NIC 1にパブリック1がある場合、NATが必要です。具体的には、インターネットに面したインターフェイス(上記あたりのNIC 1)が必要MASQUERADEでルールiptabless「をPOSTROUTINGそれを行うにはチェーンに。revsys.com/writings/quicktips/nat.htmlおよびi.stack.imgur.com/rzz83.pngを参照してください。
ローレンス

簡単に言えば、IP転送を有効にするということは、マシンがそのNICの1つから別のNICにパケットを渡すことを可能にすることを意味すると言うのは正しいでしょうか?また、単一のIP / NICを備えたマシンでIP転送を有効にする必要がないと言うのは本当ですか?
スリー14年

1
@ultrasawblade IP転送が有効で、NIC 2でインターネット接続があり、デフォルトルートとしても、NIC 1から192.168.2.2宛てのパケットを受信した場合、ルーターは何をしますか?
bobo

3

「IP転送」を有効にすると、Linuxマシンが着信パケットを受信して​​転送できるようになります。通常のホストとして動作するLinuxマシンは、IP転送を有効にする必要はありません。それは、独自の目的(つまり、ユーザーの目的)のためにIPトラフィックを生成および受信するだけだからです。

ただし、IP転送が便利な場合があります。1.マシンをルーターとして機能させ、他のホストからパケットを受信し、それらを宛先にルーティングします。2.私たちは悪者であり、いわゆる「中間者攻撃」で別のマシンになりすまします。この場合、被害者に向けられたすべてのトラフィックを傍受して見たいだけでなく、このトラフィックを被害者に転送して、被害者が自分の存在を「感知」しないようにします。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.