Нужно программно перезагрузить сеть (PHP)

Изображение пользователя gasoft.

Мой провайдер при подключении компьютера к сети присваивает мне некий ip. Вид его такой AAA.BBB.CCX.XXX, где AAA,BBB и первые две цифры третьей триады (СС) всегда одни и те же. Х - разный. Но если в последней триаде мой номер от 001 до 015 то удаленно, через ssh, я к себе подключится не могу. Попадаю куда-то в дебри их роутера наверное.
Помогите мне в таком вопросе. Если мой ip входит в недопустимый диапазон, то от имени рута нужно выполнить "/etc/init.d/./networking restart"
Так как я делал определение ip на php, то хотелось бы решения именно на нём.

0
smartass - 29 Декабрь, 2011 - 01:08
Изображение пользователя smartass.

предлагаю на баше
wget -O - -q icanhazip.com
потом с помощью sed вырезать нужные цифры и в условии сравнивать и рестартить сеть.
Но правильным бы было поговорить с техподдержкой провайдера. Возможно они и не знают о таком глюке.

0
dyug - 29 Декабрь, 2011 - 10:21

гмм, ип внешний (белый/до которого можно извне достучаться) или внутренний (серый/ип адрес сетевой карты и показываемый внешними сайтами не совпадает)?
Если внешний - то ddns тебе в помощь.
Если внутренний - то без провайдера (внешнего сайта впн/прокси) бесполезно.

0
gasoft - 14 Январь, 2012 - 12:57
Изображение пользователя gasoft.

внутренний и внешний не совпадают (есть внутрення локальная сеть). но как я ранее описал проблему, если мне присвоен внешний ip в диапазоне выше зарезервированного на какие-то нужды провайдера я прекрасно подключаюсь к себе даже с телефона (putty-это просто песня). В принципе я проблему уже решил. На cron от имени root повесил раз в час проверять внешний ip. Если я попадаю в 16 недопустимых адресов то выполнить "/etc/init.d/./networking restart". Делается не более 10 проверок.

Если интересуют подробности - спрашивайте.

Отправить комментарий

CAPTCHA на основе изображений
Введите цифры