私のルーターでiptablesを使用して、すべてのネットワークトラフィックを自分のページにリダイレクトします。
ところで、私のMacアドレスのリストを除外する方法がわかりません。
私が注文したものは次のとおりです。
iptables -t nat -A PREROUTING -m mac ! --mac-source xx-xx-xx-xx-xx-xx -p tcp --dport 80 -j DNAT --to 127.0.0.1:8080 (Host A)
iptables -t nat -A PREROUTING -m mac ! --mac-source xx-xx-xx-xx-xx-xx -p tcp --dport 80 -j DNAT --to 127.0.0.1:8080 (Host B)
ただし、ホストAのコマンドを実行します。つまり、ホストAはWebに正常にアクセスできますが、ホストBはまだリダイレクトされます。
両方のMacアドレスに正常にアクセスするにはどうすればよいですか?
答え1
これを使用してください:
iptables -t nat -A PREROUTING -m mac --mac-source xx-xx-xx-xx-xx-xx -j ACCEPT (Host A)
iptables -t nat -A PREROUTING -m mac --mac-source xx-xx-xx-xx-xx-xx -j ACCEPT (Host B)
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to 127.0.0.1:8080
最初の 2 つのコマンドは A と B のパケットを受け入れるため、パケットが別のホストから来る場合にのみリダイレクトが発生します。