iptables 転送とルーティング

iptables 転送とルーティング

実際、この質問はopenwrtについてです。 キューバAPしかし、他のLinuxディストリビューションでも同じだと思います。

「wan」と「wlan」インタフェースという2つのインタフェースがあります。

デフォルトでは、wlanインターフェイスからwanに転送されるパケットを制限するフィルタはありますか?

特に、ルータのwlanインターフェイスが192.168.1.1で、このインターフェイスに接続されている誰かがコンピュータのIPとして172.16.1.1を入力した場合。それでは、彼のパケットは転送されますか?ルーティングの決定は宛先 IP のみで決定されますか、それともソース IP の影響を受けますか?

172.16.1.1 マシンへの回答が返されないのが問題のようです。 iptables転送ルールを使用すると、インターフェイスがスイッチのように動作するようにできますか?

172.16.x を転送するには、この物理インターフェイスにエイリアスを設定できます。別の方法がありますか?

基本キューバファイアウォールスクリプトは次のように言います。

iptables -A FORWARD -i $WIFI -o $WAN -j ACCEPT

迷彩を無効にしました。

このようにネットワークを「分離」し、それに頼ることは可能ですか? 192.168.1.x以外のアドレスを使用して誰かが自分のパケットを転送できるようにする方法はありますか?

この問題は、WANインターフェイスがWLANユーザーがアクセスできないシステムの背後にあるために発生します。これらのシステムは送信元 IP アドレスに依存します。

ベストアンサー1

はい、デフォルトではフィルタがあります。デフォルトでは、パケットはまったく転送されません。ここは明らかに閉鎖されました。

有効にできる2番目のフィルタはリバースパスフィルタです。有効な場合、インターフェイスに着信パケットはルーティングテーブルと比較して送信元アドレスを確認し、応答が同じインターフェイスで送信されることを確認します。そうでない場合、パケットは破棄されます。これはにあります。/proc/sys/net/ipv4/conf/{all,default,devname}/rp_filter

それ以外の場合、デフォルトでは宛先IPのみに基づいてルーティングが行われます。

3番目の質問については...マシンが172.16.1.1/24で構成されており、デフォルトゲートウェイを192.168.1.1に設定しようとするとエラーが発生する可能性があります。デフォルトゲートウェイにアクセスできません。 (このパスにつながるパスはありますか?))。これを受け入れて使用できるようにすると(たとえば、ルートを追加して)、ルーターにパケットを送信します。リバースパスフィルタがオフの場合、ルータはパケットを受け入れてルーティングします。どんな答えもおそらく役に立たないでしょう。

  1. ルーターに戻ることができない場合があります。他のルータは192.168.1.0/24のパケットをルータに送信することを知っていますが、172.16.1.0/24は送信できません。これを達成するためにルートを設定したと仮定すると...

  2. ルータは、172.16.1.0/24 のパケットをどこに送信するか分からない。実際にはそう思うし、デフォルトゲートウェイに送信することかもしれません。ルーターでルートを設定してボックスに戻す場合...

  3. これでうまくいくかもしれません。

別の方法は、WLAN インターフェイスに別の IP アドレスを追加することです。ルータがルーティングする各サブネットに少なくとも 1 つの IP アドレスを持つことは一般的です。これにはエイリアスインターフェイスは必要ありません。次を使用してip2番目のIPを追加しますip addr add 172.16.1.254/24 dev wlan。通常、単一のルーターサブネットで使用可能な最初のIPはルーターですが、これは便宜上のものであり、技術的な要件ではありません。

iptablesボックスを通過するすべてのIPトラフィックに適用されます。これには、ローカルで生成されたトラフィックと転送されたトラフィックが含まれます。

サポートを使って実際にwanとwlanを接続(スイッチに切り替え)できますが、brctlそうしたくないようです。ebtables(いいえ)を使用してiptablesブリッジをフィルタリングできます。

おすすめ記事