iptables 仮面舞踏会が正常に動作しない

iptables 仮面舞踏会が正常に動作しない

iptablesこれがMASQUERADEブリッジではないには多くの技術的な理由があることを知っていますが、私がしなければならないのは、有線ポートからPiが接続されたeth0ワイヤレスネットワークにネットワークトラフィックを取得することだけですwlan0。しかし、うまくいかないようです。 Piはインターネットにアクセスできますが、Piを介してネットワークに接続しようとしているコンピュータではDNSが失敗します。

指示に従うここ、次のコマンドを使用しました。

echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE

wlan0アクティブになるとすぐに動作し、実行したいので、セクションに追加し/etc/network/interfacesますpost-up。 PiがネットワークのDHCPからゲートウェイを正しくインポートできないことを確認して、同じステートメントでゲートウェイを手動で設定しました。全体の内容は次のとおりです/etc/network/interfaces

auto lo
iface lo inet loopback

iface eth0 inet manual

allow-hotplug wlan0
iface wlan0 inet manual
        wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
        post-up route add default gw 10.110.0.11; echo "1" > /proc/sys/net/ipv4/ip_forward ; iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE

/etc/dhcpcd.conf次のコマンドを使用して、Piが固定IPを持つように設定します。

interface eth0
static ip_address=192.168.0.5/24
static routers=192.168.0.5
static domanin_name_servers=8.8.8.8 8.8.4.4

次に、接続を受信するコンピュータで192.168.0.2同じサブネットマスク(255.255.255.0)を使用して、同じサブネット(自分が選択したもの)に独自のIPを持つように設定し、ゲートウェイをに設定します192.168.0.5。私のコンピュータでPiを見ることができますが(pingしてssh接続できます)、Piを介してインターネット接続を受信できないようです。 Webサイトにアクセスできず、DNS検索が失敗します。この問題をどのように解決できますか?

ご協力ありがとうございます!

答え1

自分が言ったように、NAT(iptablesを介した迷彩)を使用しても、RaspPiはブリッジに変わりません。技術的な理由(WLANネットワークの3アドレスモード)のため、ハードウェアに関係なくWLANとLANをブリッジできません。

NATが実行する操作は、RaspPiの背後にあるLANからの着信トラフィックがRaspPi自体で実際に発生するように見なされるため、WLANは各ホスト(RaspPi)のみを見ることができます。無線LANは何をしますか?いいえそれがすることは、何らかの方法でWLANからLANにレイヤ2ブロードキャストを転送することです。しかし、これがDHCPに必要なものです。

どんなに操作してもiptablesあなたのためにはできません。

だから最も簡単なオプションRaspPiでDHCPサーバーを実行しています。それが私がしたことで、本当にうまくいきました。

何らかの理由で持つWLANのDHCPサーバーを介して提供されるDHCP情報を使用することは、この方法でのみ検索できる非常に特別なカスタム情報をコンピュータに提供する(可能性が低い)ため、少し面倒です。それでも制限は、アセンブリ全体がWLAN内の単一ホストとして表示される必要があることです。WLAN_ケーブルホストであるチャック一つRaspPi LANのデバイス。これは、Linuxネットワークスタック(およびiptables)をバイパスし、レイヤ2フレームを直接書き換えてLANとWLANの間で転送する方法で機能します。また、WLANからRaspPiにアクセスできなくなります。

それで十分でなければ持つ複数のデバイスを保持する唯一の方法は、WLANで4アドレスモードを有効にすることです。これはサポートが必要です。みんなWLANデバイスには固有の問題があるため、これが実際に最後の手段です。

関連情報