diff --git a/usr/local/pkg/miniupnpd.inc b/usr/local/pkg/miniupnpd.inc index 7f37d72ddf..c0760d6294 100644 --- a/usr/local/pkg/miniupnpd.inc +++ b/usr/local/pkg/miniupnpd.inc @@ -156,9 +156,13 @@ /* above function returns iface if fail */ if($if!=$iface) { $addr = find_interface_ip($if); + $bits = find_interface_subnet($if); /* check that the interface has an ip address before adding parameters */ if (is_ipaddr($addr)) { - $config_text .= "listening_ip={$if}\n"; + if ($upnp_config['listen_on_iface']) + $config_text .= "listening_ip={$if}\n"; + else + $config_text .= "listening_ip={$addr}/{$bits}\n"; if(!$ifaces_active) { $webgui_ip = $addr; $ifaces_active = $iface; diff --git a/usr/local/pkg/miniupnpd.xml b/usr/local/pkg/miniupnpd.xml index 6fc054f06a..65fd76f4d8 100644 --- a/usr/local/pkg/miniupnpd.xml +++ b/usr/local/pkg/miniupnpd.xml @@ -35,7 +35,7 @@ UPnP & NAT-PMP Settings listtopic - enable_upnp,enable_natpmp,iface_array,overridewanip,upnpqueue,logpackets,sysuptime,permdefault,permuser1,permuser2,permuser3,permuser4 + enable_upnp,enable_natpmp,listen_on_iface,iface_array,overridewanip,upnpqueue,logpackets,sysuptime,permdefault,permuser1,permuser2,permuser3,permuser4 Enable UPnP & NAT-PMP @@ -80,6 +80,11 @@ You can use the CTRL or COMMAND key to select multiple interfaces. + + Listen on interface instead of interface's IPv4 address + listen_on_iface + checkbox + Maximum Download Speed (Kbits/second) download