デバイス B で送受信されたすべてのパケットをミラーリングし、デバイス A に送信してログに記録しようとしています。ワイヤレス アクセス ポイントとして機能する OpenWRT があり、ssh 経由で OpenWRT ルーターに次のコマンドを発行しました。
iptables -A PREROUTING -t mangle -d 192.168.1.252 -j TEE --gateway 192.168.1.251
iptables -A POSTROUTING -t mangle -s 192.168.1.252 -j TEE --gateway 192.168.1.251
iptables --list -t mangle を実行すると、次の結果が表示されます。
root@OpenWrt:~# iptables --list -t mangle
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
fwmark all -- anywhere anywhere
TEE all -- anywhere 192.168.1.252 TEE gw:192.168.1.251
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
mssfix all -- anywhere anywhere
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
TEE all -- 192.168.1.252 anywhere TEE gw:192.168.1.251
Chain fwmark (1 references)
target prot opt source destination
Chain mssfix (1 references)
target prot opt source destination
TCPMSS tcp -- anywhere anywhere tcp flags:SYN,RST/SYN /* wan (mtu_fix) */ TCPMSS clamp to PMTU
デバイス A で Wireshark をプロミスキャス モードで開きましたが、デバイス B で操作 (ブラウザーで neverssl.com に接続したり、google.com に ping を実行したりなど) すると、デバイス A のトラフィックが表示されません。何が間違っているのでしょうか?
(注 1: 違いがある場合は、デバイス A を OpenWRT ルーターにワイヤレスで接続することも試みましたが、効果はありませんでした。)
(注 2: Netgear ルーターには他のデバイスが接続されていますが、OpenWRT ルーターには他に何も接続されていません。)