Posted: Sat Dec 25, 2010 19:15 Post subject: UPNP does not respond to remote requests
I have a WRTSL54GS running std-nokaid 13064. The network topology is a DSL uplink on ppp0, a local switched ethernet for home computers, an old Cisco router going to a home office network with multiple independent segments on a 3com layer 3 switch, and the wireless network serving roamers.
I am trying to get UPNP to work across the multiple remote networks and am having some trouble. First problem was getting the SSDP advertisements to have a sufficient TTL to cross the two routers, but I was able to overcome that by adding "iptables -t mangle -A PREROUTING -i br0 -d 239.255.255.250 -j TTL --ttl-set 4" to the rc_firewall startup script. Now the advertisements get to the remote network segments.
Next problem was getting the Windows SSDP queries to get to the router, which I was able to overcome by adding a TTL registry key to the SSDP entry. Now the queries get to the segment with the DD-WRT router.
However, DD-WRT does not reply to these queries. It does reply to queries from devices on it's own segment, but not to devices on other segments. SYSLOG records an ACCEPT entry that shows the router took the message alright, but nothing happens inside the UPNP/SSDP code.
One other interesting element to this is that if I time the query to happen just before the router advertisement (such as by rebooting the router then starting the query), then the agent sees the advertisement and is able to negotiate a directed session.
Maybe the multicast reply code is limiting replies to the broadcast domain of the local interface(s) so as to avoid the wan interface or something? THere are some other places in the DD-WRT UI where it assumes there is only a single local subnet (for example the DMZ address will not allow remote IP address) so that is my first guess here too.
Maybe it is some other problem though?
Also, what are the upnp command-line parameters? I see -D and -W and so forth but I can't find docs.
Same results. Router does not respond to remote queries. UPnP Tester on remote PC will see the router advertisements and negotiate a directed session just fine. Router does respond to queries from PCs on the same local subnet alright.
What are the command-line parameters to the UPNP module?