태그가 지정된 모든 패킷을 포트 1082에서 수신 대기하는 프록시 서버로 리디렉션하는 구성이 있으며 작동합니다.
ipset create unblock hash:net -exist
iptables -I PREROUTING -w -t nat -i br0 -p tcp -m set --match-set unblock dst -j REDIRECT --to-port 1082
iptables -I PREROUTING -w -t nat -i br0 -p udp -m set --match-set unblock dst -j REDIRECT --to-port 1082
또한 포트 48950에 IP 주소 172.16.0.2를 사용하는 Wireguard 인터페이스(ngw0)가 있습니다. 내가 원하는 것은 이러한 패킷을 wireguard 인터페이스로 리디렉션하는 것입니다. 노력한 영혼:
ipset create unblock hash:net -exist
iptables -I PREROUTING -w -t nat -i br0 -p tcp -m set --match-set unblock dst -j DNAT --to-destination 172.16.0.2:48950
iptables -I PREROUTING -w -t nat -i br0 -p udp -m set --match-set unblock dst -j DNAT --to-destination 172.16.0.2:48950
그리고
ipset create unblock hash:net -exist
iptables -I PREROUTING -w -t nat -i br0 -p tcp -m set --match-set unblock dst -j MASQUERADE -o nwg0
iptables -I PREROUTING -w -t nat -i br0 -p udp -m set --match-set unblock dst -j MASQUERADE -o nwg0
이들 중 어느 것도 작동하지 않습니다. 트래픽을 Wireguard로 리디렉션하는 방법은 무엇입니까?
고쳐 쓰다:
ip addr show br0
24: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue
link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
inet 192.168.0.1/24 brd 192.168.0.255 scope global br0
valid_lft forever preferred_lft forever
ip addr show nwg0
27: nwg0: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1324 qdisc noqueue qlen 50
link/[65534]
inet 172.16.0.2/32 scope global nwg0
valid_lft forever preferred_lft forever
~ # netstat -an | grep 48950
udp 0 0 0.0.0.0:48950 0.0.0.0:*
udp 0 0 :::48950 :::*
~ # netstat -an | grep 1082
tcp 0 0 :::1082 :::* LISTEN
tcp 0 0 ::ffff:192.168.0.1:1082 ::ffff:192.168.0.130:56540 TIME_WAIT