OpenWrt Forum Archive

Topic: PROCD instance question

The content of this topic has been archived on 1 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

I've looked at the igmpproxy init script and came up with the following, but the firewall redirect doesn't seem to be added (I'm checking with iptables-save | grep PROCD).

procd_open_instance
procd_set_param command /usr/sbin/uhttpd -f -h /www_fakeinternet -r fakeinternet -x /cgi-bin -t 60 -T 30 -k 20 -A 1 -E /cgi-bin/error.cgi -n 3 -N 100 -R -p 0.0.0.0:65530 -p [::]:65530 -i .cgi=/bin/ash
procd_set_param respawn ${respawn_threshold:-3600} ${respawn_timeout:-5} ${respawn_retry:-5}
procd_set_param stdout 1
procd_set_param stderr 1
procd_open_data
json_add_array firewall
json_add_object ""
json_add_string type redirect
json_add_string target 'DNAT'
json_add_string src 'lan'
json_add_string proto 'tcp'
json_add_string src_dport '80'
json_add_string src_dip '!192.168.221.0/24'
json_add_string dest_ip '192.168.221.1'
json_add_string dest_port '65530'
json_add_string name 'PROCD_rule'
json_add_string reflection '0'
json_close_object
json_close_array
procd_close_data
procd_close_instance

The uhttpd instance starts, but I'm guessing I'm declaring/describing the firewall array incorrectly. Any help to re-write the array properly would be appreciated.

If anyone has any idea where I can read up on that -- please share. I've looked at the omcproxy/igmpproxy code, but they don't use redirects so I'm clueless as to how the redirect json objects are supposed to look.

The discussion might have continued from here.