Sort-of deal with the router picking a different external port.

This only applies to NAT-PMP where the router is allowed to do that if
it feels like it.  "Sort-of" because, fucking miniupnpd crashes when
you attempt to remove mappings by sending a request per RFC 6886 3.4.

So instead of doing something that crashes the UPnP + NAT-PMP stack, we
leave the stale mapping in the table to get reaped in 2 hours.

No idea what happens when another mapping to the internal port is
requested with a different external port...

I should check to see if the code that calls the helper can deal with
the external port changing because there is no reason that we can't
use the mapping instead of this terrible situation.