使用miniupnp和libnatpmp进行端口映射

时间:2011-12-12 13:10:47

标签: upnp portforwarding

我正在使用miniupnp添加端口映射到路由器,端口映射为“租约”时间量,我现在使用10个小时,我的问题是:

端口成功映射后,我应该定期ping路由器以检查端口是否仍然映射(例如每分钟甚至更少),还是我相信路由器在整个租期内保持端口映射,只能在租约到期前几分钟检查才能更新吗?

类似地,在成功的端口映射之后,另一个调用是为了检索外部IP地址,我是否相信这个IP不会改变,或者我应该每隔几秒钟(或几分钟?)继续ping,以验证外部IP地址是否有没改变?

2 个答案:

答案 0 :(得分:2)

您可以订阅WAN ***连接(PPP或IP)的UPnP事件并捕获事件“PortMappingNumberOfEntries”。

我希望这会有所帮助。

答案 1 :(得分:1)

不幸的是,如果IP更改或映射不再好,您不能依靠Home路由器正确触发正确的事件。

我建议定期(每隔几分钟)调用GetSpecificPortMappingEntry()和/或GetExternalIPAddress()