ahelper

<<< Back

Получение внешнего IP из роутера Sagemcom F@ST 1744 V2 (продолжение2)

Полученные данные объединяем воедино, создаем алгоритм работы.

Из полученой HTML страницы вычленяем внешний IP.

$ip = strstr($output, 'PPPoE');

preg_match_all('/(\d+).(\d*).(\d*).(\d*)/', $ip, $matches);
if (!empty($matches[0]))
{
 $ip = $matches[0][0];
 $ip2 = $matches[1][0];
//print_r($ip2);
//print_r($ip);

А далее нарисовалась такая логика работы.
Для ее реализации используются два сценария. Сценарий Router_IP работает с роутером, каждые 5 минут перезапуская себя. Но если есть изменения IP, то далее начинает работу сценарий Сценарии=>Связь=>Check_IP_HLDNS. Происходит отправка своих данных на сервер HLDNS, в ответ также получаем свой IP или ошибку. Сверяем IP ответа с IP роутера, если все OK - работает сценарий Router_IP, если NG (no good) перезагружаем роутер, сценарий Router_reboot. Далее все с начала.

Итог всей проделаной работы: Сервер Умного дома всегда доступен по адресу /моеимя.hldns.ru/

Длительная проверка показала, теперь нет "нежданчиков", что сервер окажется за NAT.
VPN поднимать пока не вижу необходимости!

Discuss (4) (1)

Малоярославец, Россия

На форуме: ahelper