スマートホームデバイスをローカルネットワークに接続する方法を見つけようとしていますが、インターネットアクセスは拒否されます。
IPアドレスにバインドする別のルールを設定する代わりに、ローカルネットワークにアクセスできますが、インターネットバインディングパケットを破棄するDD-WRTルーターに仮想WiFiを作成しました。
デフォルトでは、新しい仮想WiFiはすべてブリッジインターフェイスのデフォルトプールと混在します。
これはまったくまれな問題ではなく、標準的なアプローチでは、仮想インターフェイスを別のサブネットと完全なルールセットを使用して独自のブリッジに移動するようですiptables
。例えばdd-wrt:VAPがインターネットにアクセスできないようにする
我々は間違いなくより良いことができます。
ebtables
希望の効果を得るためのルールを追加したいと思います。次の違法ルール:
ebtables -t broute -I BROUTING -i wl0.1 -o $(get_wanface) -j REJECT
-o
この場合は何の効果もないので、REJECT
私が得ることができる最も近いものは次のとおりです。
ebtables -t broute -I BROUTING -i wl0.1 -p IPv4 --ip-destination ! 192.168.1.0/24 -j DROP
ここでの設計は、ブリュートテーブル(グローバルチェーンの初期)に接続し、ブリッジルータからパケットをドロップすることです。仮想WiFiに入り、ローカルサブネット以外の場所に送信されるすべてのパケットをターゲットにします。
この種の仕事。おそらく最初にローカル/ワンテストを実行しましたが、診断アプリがハングアップし、ネットワークが非常に健康ではないように感じました。
私の考えでは、ebtablesがIPで素晴らしい作業を実行できないため、REJECTの概念がここに適用されないためだと思います。 DROPは電話を切ることができ、DROPパケットがどこに行くかを処理する方法がないために問題になります。 (私はパケットがどこに行くのか/傍受する方法/拒否する方法などもわかりません。)
このebtables
アプローチは効果的ですか、それとも失敗する運命ですか?
答え1
全体的に:
ebtables -F INPUT
ebtables -A INPUT -i wl0.1 -p IPv4 --ip-destination 192.168.1.1/24 -j ACCEPT
ebtables -A INPUT -i wl0.1 -p IPv4 --ip-destination 255.255.255.255 -j ACCEPT
ebtables -A INPUT -i wl0.1 -p IPv4 -j DROP
ebtables -A INPUT -i wl0.1 -p IPv6 -j DROP
ebtables -L --Lc
- (オプション)既存の
ebtables
ルールを更新します(消去)。 - 制限されたWi-Fi経由でローカルサブネットに送信されたすべてのエントリを受け入れます。
- 制限されたWi-Fi経由でブロードキャストアドレスに送信されたすべてのエントリを受け入れます。
- 制限されたWi-Fi(IPV4など)からのその他のコンテンツを削除してください。
- IPV6などの制限されたWiFiから他のコンテンツを削除してください。
- (オプション)追加したルール+カウンターを表示
回想 - この演習の目的は、次の構成を作成することです。
br0 -
- eth0 Wired ethernet | 192.168.1.0/24 | INTERNET
- wl1 5 GHz WiFi | 192.168.1.0/24 | INTERNET
- wl0 2.4 GHz WiFi | 192.168.1.0/24 | INTERNET
- wl0.1 2.4 GHz WiFi | 192.168.1.0/24 | NO INTERNET
(注 - 同じブリッジ内のすべてのインターフェイスはすべて同じサブネット上にあり、ほとんどインターネットがあり、1つはインターネットがありません。)
他のすべてのエントリを削除できますが、なぜDROPルールにプロトコルを割り当てるのですか?プロトコルとは関係のないものが見つかりました。
ebtables -A INPUT -i wl0.1 -j DROP
...Wi-Fi接続が確立された状態で動作します。ただし、新しいWiFi接続では認証できません。これは、ルールがWPA2-PSKで必要とされる非IPトラフィックをブロックするためであると思います。
これが誰かに役立つことを願っています。私のユースケースは、Kasaスマートホームデバイスを自分のネットワークに接続し、ローカルスマートホームシステムにアクセスできるようにしますが、自宅に電話をかけたり自分で更新したりすることはできません。 (TPLINKがオープンプロトコルを終了するという話を聞いたので、自己更新部分は主な動機です)。