OpenWrt에서 리디렉션을 구성하는 방법은 무엇입니까?

OpenWrt에서 리디렉션을 구성하는 방법은 무엇입니까?

다음은 uci 구성과 생성되는 규칙입니다.

uci add firewall redirect
uci set firewall.@redirect[-1].target=DNAT
uci set firewall.@redirect[-1].proto=tcp   
uci set firewall.@redirect[-1].src=wan
uci set firewall.@redirect[-1].src_dport=80
uci set firewall.@redirect[-1].dest=lan
uci set firewall.@redirect[-1].dest_port=80
uci set firewall.@redirect[-1].dest_ip=10.0.0.10
uci commit firewall
<reboot>
iptables -t nat -A zone_wan_prerouting -p tcp -m tcp --dport 80 -j DNAT --to-destination 10.0.0.10:80
iptables -t nat -D zone_lan_prerouting -p tcp -s 10.0.0.0/255.0.0.0 -d <external_ip_of_router> -m tcp --dport 80 -j DNAT --to-destination 10.0.0.10:80
iptables -t nat -A zone_lan_prerouting -p tcp -s 10.0.0.0/255.0.0.0 -d <external_ip_of_router> -m tcp --dport 80 -j DNAT --to-destination 10.0.0.10:80
iptables -t nat -D zone_lan_postrouting -p tcp -s 10.0.0.0/255.0.0.0 -d 10.0.0.10 -m tcp --dport 80 -j SNAT --to-source 10.0.0.1
iptables -t nat -A zone_lan_postrouting -p tcp -s 10.0.0.0/255.0.0.0 -d 10.0.0.10 -m tcp --dport 80 -j SNAT --to-source 10.0.0.1

그러나 이것은 작동하지 않습니다.

(iptables 명령을 얻으려면 config fw3 -4 print전후에 사용합니다 .)ucidiff

리디렉션은 위 목록에서 규칙 #1과 #5를 수동으로 입력한 경우에만(먼저 uci 구성을 지우고 -s 10.0.0.0/255.0.0.0규칙 #5를 제거한 경우에만 작동하기 시작했습니다.)

그러나 다음 uci 구성은 유효합니다.

uci add firewall redirect
uci set firewall.@redirect[-1].target=DNAT
uci set firewall.@redirect[-1].proto=tcp
uci set firewall.@redirect[-1].src=wan
uci set firewall.@redirect[-1].src_dport=5000
uci set firewall.@redirect[-1].dest=lan
uci set firewall.@redirect[-1].dest_port=22
uci set firewall.@redirect[-1].dest_ip=10.0.0.2
uci commit firewall

이것을 어떻게 설명할 것인가?

관련 정보