DD-WRTファームウェアをインストールしたルーターがあります。ゲストネットワークとして使用する仮想インターフェイスを設定しようとしています。 LANが192.168.1.0/24サブネット上にある間、ゲストネットワークは192.168.8.0/24サブネット上にある必要があります。ゲストネットワークには完全なインターネットアクセスが必要ですが、LANにはアクセスできません。仮想インターフェイスを作成してブリッジ(br1)に割り当てる限り、すべてが正しく設定されていると思います。ゲストネットワークに接続でき、クライアントは正しいサブネットでIPを取得します。ただし、192.168.8.0/24サブネット外のものにはアクセスできません。私はいくつかのiptablesルールを設定する必要があると思いますが、私はそれらにかなり動揺しています。これが私が現在ファイアウォールの下に持っているものです:
iptables -I INPUT -i br1 -m state --state NEW -j logaccept
iptables -I FORWARD -i br1 -o $wanif -m state --state NEW -j ACCEPT
編集、詳細:
ゲストネットワークとしてワイヤレス仮想インターフェイス(ath0.1)を設定しました。次に、[設定]> [ネットワーク]で、IP 192.168.8.1を使用してbr1というブリッジを作成し、それにath0.1を割り当てました。ブリッジにDHCPサーバーを追加しました。次に、[サービス]> [サービス]で、追加のDNSMasqオプションに以下を追加しました
interface=br1
dhcp-range=br1,192.168.8.100,192.168.8.200,255.255.255.0,1440m
最後に、上記のiptablesルールをファイアウォールの[管理]> [コマンド]に追加しました。
このためには、.8ネットワークのデフォルトルート設定が必要です。つまり、2つのネットワーク間のルーティングを処理するための何かが必要です。
ただし、ath0.1以外の接続からのトラフィックが外部(境界ルーター以降)以外に到達しないようにすることだけに関心がある場合は、2番目のネットワークがなくてもセットアップできます。あなたがする必要があるのは、ath0.1からネットワーク範囲へのトラフィックをブロックするiptablesルールと、ネットワーク範囲からのトラフィックをブロックする逆のルールを設定することです。また、ゲートウェイルーターとの間のトラフィックを許可するルールペアも必要になります。
何かのようなもの :
iptables -t INPUT -i ath0.1 -d 192.168.1.254 -j ACCEPT
iptables -t OUTPUT -o ath0.1 -d 192.168.1.254 -j ACCEPT
iptables -t OUTPUT -o ath0.1 -s 192.168.1.0.24 - j DROP
iptables -t INPUT -i ath0.1 -d 192.168.1.0.24 - j DROP
これらのルールにより、ルーター(ここでは1.254という名前)を除いて、トラフィックがメインネットに到達することを許可せずに、192.168.1.0/24にすべてを設定できるようになります。微調整が必要な場合もあります。