Lý lịch
Tôi đã định cấu hình OpenWRT ở Chế độ cầu nối.
Tôi đẩy các gói từ L2 sang L3 bằng net.bridge.bridge-nf-call-iptables=1
Kịch bản gói không được gắn thẻ
Trong trường hợp các gói không được gắn thẻ, thiết lập này hoạt động tốt và tôi có thể chặn tất cả các gói và chuyển hướng chúng đến cổng bị khóa bằng quy tắc iptable như:
iptables -A PREROUTING -m physdev --physdev-in ath242113 -j prt_captive_2113
iptables -A PREROUTING -m physdev --physdev-in ath512113 -j prt_captive_2113
iptables -A prt_captive_2113 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080
iptables -A prt_captive_2113 -p tcp -m tcp --dport 443 -j REDIRECT --to-ports 8443
nơi ath242113 và ath512113 là giao diện wifi của tôi
Gói được gắn thẻ / Kịch bản Vlan
Trong trường hợp thiết lập Vlan bắc cầu, chuyển hướng không hoạt động với cấu hình thông thường và quy tắc iptables như trên.
Đây là thiết lập cầu nối của tôi:
br-vlan80 7fff.587be915a963 không có ath242113
ath512113
eth0,80
trong đó, ath242113 và ath512113 là giao diện không dây và eth0.80 là giao diện ethernet được gắn thẻ.
Vì vậy, tôi đã thử kích hoạt net.bridge.bridge-nf-filter-vlan-tagged=1 và bridge-nf-pass-vlan-input-device=1 theo bản vá này:
https://patchwork.ozlabs.org/project/netfilter-devel/patch/[email protected]/
Tôi cũng đã thay đổi quy tắc iptables thành:
iptables -A PREROUTING -i br-vlan80 -j prt_captive_2113
iptables -A prt_captive_2113 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080
iptables -A prt_captive_2113 -p tcp -m tcp --dport 443 -j REDIRECT --to-ports 8443
Nhưng nó dường như cũng không hoạt động.