Jump to content
Sign in to follow this  
alexey_2014

Определение динамических IP-адресов ферм для удаленного контроля

Recommended Posts

Вместо TeamViewer решил попробовать TightVNC (Windows + Android), т.к. c TeamViewer какие-то непонятки происходят. Ферма работает, а TeamViewer показывает, что не в сети. Да и на форуме народ жалуется на другие проблемы...

В TightVNC (и других аналогичных программах) подключение происходит напрямую, поэтому нужно знать актуальный IP-адрес фермы. Моя ферма подключена через USB-модем, домашняя мини-ферма - через WiFi-роутер. IP-адреса в обоих случаях динамические.

 

Для решения проблемы набросал скрипт на AutoIt, который периодически определяет IP-адрес и, если он изменился, отправляет письмо с новым IP. В моем случае - я отправляю письмо сам себе. И на телефоне в почте вижу сообщения о смене IP-адресов ферм.

  1. Устанавливаем AutoIt.
  2. Открываем SendIP.au3, в строках 9-19 вписываем свои настройки.
  3. Компилируем скрипт.
  4. Получившийся SendIP.exe копируем в какую-нибудь папку на ферме или в корень диска C.
  5. Рядом с SendIP.exe кладем SendIP_settings.ini и прописываем в нем отправителя письма и тему, добавляя имя фермы, чтобы знать, чей IP-адрес.
  6. Если установлен фаерволл/антивирус, то вручную однократно запускаем SendIP.exe и разрешаем ему запрашиваемые действия.
  7. В планировщике заданий создаем задачу:
  • Общие - "Выполнять только для зарегистрированного пользователя".
  • Триггеры - Начать задачу "При входе в систему", ставим галку "Любой пользователь", повторять задачу каждые "5 минут", в течение "Бесконечно".
  • Действия - Действие "Запуск программы", жмем "Обзор", выбираем файл SendIP.exe.

SendIP.zip

Edited by alexey_2014

Share this post


Link to post
Share on other sites

Хороший вариант. Достойная альтернатива.

 

А почему вы решили задачу именно таким путём, через Autoit? Рассматривали ли решение задачи с помощью сервиса no-ip.org ?

Share this post


Link to post
Share on other sites

Update - вынес настройки имени отправителя письма и тему в ini-файл. Теперь файл надо скомпилировать один раз, он будет одинаковый для всех ферм.

 

amadeus, написал для общего развития. :) Может, кому-нибудь и пригодится... Хотя да, через динамический DNS проще будет.

Share this post


Link to post
Share on other sites

Update - вынес настройки имени отправителя письма и тему в ini-файл. Теперь файл надо скомпилировать один раз, он будет одинаковый для всех ферм.

 

amadeus, написал для общего развития. :) Может, кому-нибудь и пригодится... Хотя да, через динамический DNS проще будет.

Круто)) для общего развития это хорошо))

 

А через этот АутоИт можно интерфейс рисовать? по сети работать? работа с АПИ какого либо приложения??

Я просто впервые узнаю про эту софтину.

Share this post


Link to post
Share on other sites

Хороший вариант. Достойная альтернатива.

 

А почему вы решили задачу именно таким путём, через Autoit? Рассматривали ли решение задачи с помощью сервиса no-ip.org ?

Действительно) Или любой другой сервис ddns.

Но мы не ищем лёгких путей)

Share this post


Link to post
Share on other sites
подключение происходит напрямую, поэтому нужно знать актуальный IP-адрес фермы.  

 

Еще одно ограничение vnc - нужно чтобы машина была не за NAT'ом

Share this post


Link to post
Share on other sites

amadeus, в ней много чего можно сделать. Графический интерфейс, сеть, сокеты - все это есть.

Share this post


Link to post
Share on other sites

Велик, конечно, с квадратными колёсами, педалей пока нет, поэтому придётся толкать бегая рядом, но он уже ездит.

Вашу бы энергию, ТС, да в мирное русло... ) Может, PHP или C# знаете? Могу предложить задачку...

 

ЗЫ: ddns + port forwarding (если нужен).

Share this post


Link to post
Share on other sites

А подскажите по поводу USB модема. Никак не могу подключится к сети. У меня роутер с юсб модемом настроил на нем проброс портов если стучатся на него в 80 порт, то он перенаправляет на страницу со статистикой бамта на ферму. Теоретически это должно было сработать, но при попытке доступа из вне сети ничего не получается: IP-адрес роутера не пингуется. 

Share this post


Link to post
Share on other sites

Либо стучитесь на неправильный IP, либо в роутере включен Firewall, либо неправильно настроен проброс портов.

Share this post


Link to post
Share on other sites

либо адрес который вам даёт провайдер не белый

Share this post


Link to post
Share on other sites

Почти все опсосы дают серый ip, никакие ddns и близко работать не будут. То, что выложил ТС - тоже.

Share this post


Link to post
Share on other sites

Ага, через 2G/3G (Мегафон) не пашет. Дома через оптику и WiFi-роутер - работает. А на ферме у TeamViewer почему-то ID поменялся сам, потому и показывал, что не в сети.

Share this post


Link to post
Share on other sites

А на ферме у TeamViewer почему-то ID поменялся сам, потому и показывал, что не в сети.

Да пофиг ID...

 

cfab51a2f1e7t.jpg

 

Добавьте фермы в список "своих" ПК и настройте доступ по паролю, без подтверждения

Share this post


Link to post
Share on other sites

Uliss, я так и делал. Но после смены ID ферма появилась в разделе "Не в сети".

 

В общем, на ферме вошел в свою учетную запись, поставил галку "Оставаться в сети". Посмотрим...

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...