сопоставление портов с использованием miniupnp и libnatpmp - PullRequest
1 голос
/ 12 декабря 2011

Я использую miniupnp для добавления сопоставления портов к маршрутизатору, порт сопоставлен с периодом «аренды», в настоящий момент я использую случайные 10 часов, мой вопрос:

после успешного сопоставления порта я должен периодически пинговать маршрутизатор, чтобы проверить, все ли сопоставлен порт (например, каждую минуту или даже меньше), или я доверяю маршрутизатору, чтобы порт оставался сопоставленным в течение всего срока аренды и проверить только несколько минут до истечения срока аренды, чтобы продлить его?

Аналогично, после успешного сопоставления портов делается другой вызов для извлечения внешнего IP-адреса. Могу ли я верить, что этот IP-адрес не изменится, или я должен продолжать пинговать каждые несколько секунд (или минут?), Чтобы убедиться, что внешний IP-адрес имеет не изменилось?

Ответы [ 2 ]

2 голосов
/ 23 мая 2012

Вы можете подписаться на событие UPnP подключения WAN *** (PPP или IP) и перехватить событие "PortMappingNumberOfEntries".

Надеюсь, это поможет.

1 голос
/ 01 декабря 2014

К сожалению, вы не можете полагаться на домашние маршрутизаторы для правильного запуска правильных событий в случае, если изменение IP-адреса или сопоставление больше не подходит.

Я советую периодически (каждые несколько минут) вызывать GetSpecificPortMappingEntry () и / или GetExternalIPAddress ()

...