Что такое динамический днс. Рекомендуемые публичные DNS сервера

Статья более не актуальна. Яндекс всех поголовно переводит на Яндекс.Коннект. В API Коннекта на данный момент отсутствует возможность управлять DNS-записями. API pdd.yandex уже не работает.
Можно использовать api Telegram для получения динамических ip. Инструкция

Я давно пользовался услугами dyndns для подключения из вне к домашней файлопомойке-торрентокачалке на фряхе, у которой динамический ip от провайдера. Хотя уже давно у dyndns эта услуга платная для вновь зарегистрировавшихся пользователей, но я пользовался бесплатно, т.к зарегистрировался ещё до того как они стали за это просить денег. Но на днях мне пришло письмо что они не могут больше предоставлять эту услугу мне бесплатно и со следующего месяца я должен буду за неё платить. Меня это не устроило и я стал искать выход из текущего положения.

Т. к. домены у меня делегированы на Яндекс DNS я стал читать мануалы для их API и выход был найден. Расскажу о нём ниже.

Чтобы использовать яндекс api нам нужно получить токен. Получить его довольно просто, в браузере вводим.

Https://pddimp.yandex.ru/get_token.xml?domain_name=domen.ru

Где domen.ru - ваш домен делегированный на яндекс. Вводим капчу и в выводе ищем:

Token="XXXXXX"

В кавычках будет ваш токен. Копируем его куда-нибудь, он нам потребуется чуть позже.
Теперь нам нужно добавить к нашему домену сабдомен, который будет ссылаться на машину с динамическим ip. Переходим на https://pdd.yandex.ru , выбираем домен и кликаем «Редактор DNS» там добавляем А-запись для домена:

В поле «Хост» вводите сабдомен, а в поле «Значение записи» пишете любой ip(в последствии он будет меняться, когда будет изменятся ip вашей тачки).

Теперь нам нужно получить id нашей записи. Для этого в браузере вводим:

Https://pddimp.yandex.ru/nsapi/get_domain_records.xml?token=XXXXXX&domain=domen.ru

Где ХХХХХХ-ваш токен, а domen.ru - ваш домен делегированный на яндекс.

В выводе ищем строку с нашей записью myhome.domen.ru и в этой строке находим:

Id="1234567"

В кавычках id записи, так же копируем его куда-нибудь.

Теперь пишем скрипт на тачке на которой динамический ip. Скрипт будет проверять внешний ip тачки раз в пол часа и если он изменился, то будет изменять А-запись на Яндекс DNS.

# ee /usr/local/bin/dyndns.sh

#!/bin/sh PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin; export PATH DOMEN="domen.ru" # ваш домен делегированный на яндекс SUB=myhome # сабдомен TOKEN=XXXXXX # токен RECID=1234567 # id записи while true; do IP="curl -s http://ip..domen.ru dns1.yandex.ru | grep has | awk "{print $4}"` # замените myhome.domen.ru на ваш сабдомен if [ $IP != $YAIP ] then curl -s "https://pddimp.yandex.ru/nsapi/edit_a_record.xml?token=$TOKEN&domain=$DOMEN&subdomain=$SUB&record_id=$RECID&content=$IP&ttl=1800" fi sleep 1800; done;

Значения переменных измените в соответствии с комментариями.

Делаем скрипт исполняемым:

# chmod +x /usr/local/bin/dyndns.sh

И добавляем соответствующую запись в крон:

# crontab -e @reboot /usr/local/bin/dyndns.sh

Всё, теперь после перезагрузки скрипт будет автоматически запускаться. Перезагружаемся или запускаем скрипт вручную и проверяем на https://pdd.yandex.ru изменилось ли значение записи для нашего сабдомена.

P.S. Чтобы было совсем все бесплатно, можно не покупать домен а использовать бесплатный домен в зоне.tk. Получить его можно на сайте www.dot.tk

Иногда необходимо прописать DNS для компьютера с динамическим IP адресом. Простым путем для этого являются сервисы по типу dyndns , описанные в недавнем топике . Иногда такой подход работает достаточно плохо.

Напрмер в моей ситуации, провайдер иногда меняет мой публичный IP адрес. Это иногда случается обычно раз в несколько месяцев. Кроме того, мой домашний компьютер перезагружается крайне редко. За это время сервис dyndns, которым я пользовался ранее успевал пару раз прислать мне оповещения о неактивности с целью отключить «неиспользуемый» аккаунт. Перейти на вручную прописываемую DNS зону также не получается, потому что иногда адрес все же меняется. Причем обычно об этом узнаешь когда нужен доступ к домашнему компьютеру здесь и сейчас.

Для реализации описываемого метода понадобится сервер в интернете с DNS сервером bind на нем. А так же доменная зона, субдомен которой мы будем выделять для нашего компьютера. Описывается вариант с подключением Linux-компьютера к Linux-серверу. Для использования других операционных систем понадобится почитать мануалы и модифицировать некоторые шаги.

Итак:
1. Имеем установленный сервер bind9 с доменом server.org
2. Создаем зону client.server.org.zone:

$ORIGIN .
$TTL 10 ; 10 seconds
client.server.net IN SOA ns1.server.net. hostmaster.server.net. (
18 ; serial
10800 ; refresh (3 hours)
3600 ; retry (1 hour)
604800 ; expire (1 week)
10 ; minimum (10 seconds)
$TTL 3600 ; 1 hour
NS ns1.server.net.
NS ns2.server.net.
MX 10 client.server.net.

Здесь сервера ns1.server.net и ns2.server.net - DNS сервера для нашей зоны, client.server.net - адрес нашего домашнего компьютера

3. генерим ключи на клиенте:
client# cd /etc/namedb/keys
client# dnssec-keygen -b 512 -a HMAC-MD5 -v 2 -n HOST client.server.net.

4. Создаем фаил с ключем на сервере:
server# cd /var/named/chroot/etc
server# vim keys.conf:

Key client.server.net. {
algorithm "HMAC-MD5";
secret "omr5O5so/tZB5XeGuBBf42rrRJRQZB8I9f+uIIxxei8qm7AVgNBprxtcU+FQMzBvU/Y+nyM2xbs/C8kF3eJQUA==";
};

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

Выставляем права доступа к фаилу с ключами:
server# chmod 640 keys.conf
server# chown root:named keys.conf

5. добавляем нашу зону в named.conf:
include "/etc/keys.conf"
zone "client.server.net" {
type master;
file "zones/client.server.net";
allow-update{
key client.server.net;
};
};

Здесь прописан параметр, который позволяет обновлять данные зоны. Вообще, почитав мануалы, можно найти опции этого параметра, позволяющие обновлять только одну запись в зоне для данного ключа. Т.е можно иметь зону с прописанными в ней поддоменами client1, client2, etc. которые будут авторизоваться с ключами key1, key2, etc.

6. Перезапускаем DNS сервер:
server# /etc/init.d/named reload

7. Создаем на клиенте скрипт, который будет обновлять данные зоны:
#!/bin/bash
IFACE="wlan0"
TTL=3600
SERVER=ns1.example.com
HOSTNAME=foo.example.com
ZONE=example.com
KEYFILE=/root/ddns-keys/Kfoo.example.com.+157+12345.private

New_ip_address=`ifconfig $IFACE | grep "inet addr:" | awk "{print $2}" | awk -F ":" "{print $2}"`
new_ip_address=${new_ip_address/ /}

Nsupdate -v -k $KEYFILE << EOF
server $SERVER
zone $ZONE
update delete $HOSTNAME A
update add $HOSTNAME $TTL A $new_ip_address
send
EOF

В начале скрипта описаны соответствующие параметры: интерфейс, имена сервера и зоны, местоположение фаила с ключем.

8. Осталось только настроить автозапуск/автоматическую смену адреса при смене DNS.
Мы это сделаем при помощи скрипта для NetworkManager:
создадим фаил /etc/NetworkManager/dispatcher.d/20-dyndns.sh:
#!/bin/sh

Iface=$1
state=$2

If [ "x$state" == "xup" ] ; then
/etc/namedb/ddns-update
elif [ "x$state" == "xdown" ]; then
true
fi

Сделаем его исполняемым и принадлежащим пользователю root.

Запускаем-проверяем-пользуемся.

Upd: Если не работает - проверяем (устанавливаем) на сервере права named на записть в папку в которой лежит фаил client.server.org.zone
named будет создавать там фаил client.server.org.zone.jnl

Использованы следующие материалы.

Для многих пользователей компьютерных систем понятие динамического DNS-сервера является несколько отвлеченным. Большинство юзеров понятия не имеет о том, что такое динамический ДНС и для чего используются серверы такого типа. Между тем ничего особо сложного и в понимании этого термина, и в настройке сервиса нет. Далее, к рассмотрению предлагаются теоретические сведения и практические решения, которые сможет без труда освоить любой человек, даже не знакомый с этими службами.

Динамический ДНС: что это и для чего нужно?

Сама технология использования DNS-серверов изначально предполагает, что они выступают в роли своеобразных интерпретаторов, позволяющих обращаться к ресурсам интернета без ввода цифровой комбинации адреса сайта, соответствующей его адресу IP.

Все знают, что для ресурса в адресной строке браузера прописывается только название определенной страницы, состоящее из букв, цифр или специальных символов, а сервер DNS по имени ресурса производит перенаправление на соответствующий ему IP.

Динамический ДНС работает несколько иначе, позволяя присваивать доменные имена любому устройству (отдельному терминалу, и т. д.), для которого установлено использование динамического IP. При этом могут использоваться и совершенно разные IP-адреса, например, полученные через DHCP или IPCP. Но главное отличие от статической технологии состоит в том, что информация на сервере может обновляться полностью в автоматическом режиме. При подключении к ресурсу с других машин их пользователи даже не будут знать о том, что в определенные моменты IP-адрес изменяется.

Вопросы динамического IP

Одним из основополагающих принципов работы динамических ДНС-серверов является наличие у клиентской машины динамического адреса IP. В случае использования статического адреса за его применение может потребоваться выложить немалую сумму денег. Именно поэтому при настройке DDNS покупать статический адрес и не нужно.

Специальные программные клиенты, устанавливаемые на пользовательских терминалах, могут производить такое преобразование без участия пользователя.

Преимущества использования DDNS

Но для чего же тогда применяется динамический ДНС-сервер? В качестве самого простого примера можно рассмотреть видеонаблюдение, организованное за счет установки регистратора и IP-камер.

Вроде бы в инструкции и написано, что данная модель поддерживает подключение через роутер с возможностью контроля происходящего через интернет, а на деле подключиться без сервера DDNS оказывается невозможным.

При использовании DDNS-технологии пользователи получают неоспоримые преимущества, среди которых отдельно можно выделить следующие:

  • возможность использования в частных сетях при обращении к службам и сервисам совершенно разных протоколов и портов;
  • отсутствие необходимости приобретения статического IP с привязкой к конкретному устройству;
  • упрощенная возможность посредством RDP-клиентов;
  • мониторинг сети (отслеживание компьютеров, находящихся в режиме онлайн или отключившихся от сети);
  • удаленное управление и перезагрузка компьютеров при обнаружении неполадок даже при отсутствии у сети внешнего IP (достаточно обычного подключения к интернету);
  • постоянное отслеживание своего динамического адреса для организации ссылок на собственный ресурс;
  • возможность применения генераторов карт сайтов без ограничений по количеству страниц и проведения обязательной регистрации;
  • отслеживание нерабочих ссылок;
  • обмен информацией между компьютерами напрямую, минуя ее сохранение на промежуточном сервере.

Динамический (общие принципы)

Что же касается вопросов настройки, которые многим кажутся чем-то из области фантастики, ничего особо сложного тут нет. Чтобы не заниматься процедурами настройки роутера, проброса портов и еще множества сложных действий, проще всего сразу обратиться к специализированным приложениям и сервисам, которые специально созданы для упрощения работы.

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

Самые популярные платформы и клиенты

Динамический ДНС сегодня используется достаточно широко. Например, корпорация Microsoft для Active Directory применяет аутентификацию Kerberos без необходимости распространения ключей вручную.

Одной из наиболее популярных платформ для UNIX-систем является BIND, позволяющая произвести даже совместимость с Windows NT. Также динамический ДНС бесплатно предоставляют многие хостинговые компании, позволяя пользователям изменять содержимое контента через стандартный веб-интерфейс.

Если говорить о клиентских приложениях и сервисах, среди них наибольшей популярностью пользуются следующие:

  • ASUS DDNS;
  • No-IP;
  • HE Free ;
  • DNS-O-Matic;
  • Zone Edit;
  • DynDNS.

Рассмотрим настройку DDNS на примере каждого клиента.

ASUS DDNS

Тем пользователям, у которых имеется динамический ДНС-роутер от ASUS, повезло больше других. Для использования DDNS достаточно просто войти в раздел настроек и активировать сам сервис.

После этого следует придумать и зарегистрировать произвольное название, после чего пользователь получит доменное имя в виде «Название.asuscomm.com». Кроме того, динамический ДНС-список включает в себя еще множество дополнительных служб и сервисов, а также на сегодняшний день является чуть ли не самым большим.

No-IP

Не менее простую настройку предполагает и динамический ДНС в виде сервиса No-IP. Для него следует выполнить несколько простых шагов.

Сначала нужно зарегистрироваться на ресурсе noip.com и добавить с созданный при регистрации аккаунт нужный хост (функция Add Host). После этого для бесплатной регистрации станут доступны три доменных имени, для которых нужно будет придумать собственное название.

HE Free DNS Service

Не менее интересным многим может показаться и данный сервис. В принципе, настройка весьма символична (как и в предыдущих случаях).

Однако именно эта служба привлекает пользователей достаточно внушительным списком дополнительных возможностей, на которые тут же представлены быстрые ссылки (сертификация, туннельный брокер, карта сети, управление протоколом IPv6, серверы DNS и telnet).

DNS-O-Matic

Перед нами еще один весьма интересный и совершенный клиент, функционирование которого отличается от всех предыдущих сервисов. Его основная задача состоит в том, чтобы пользователь мог изменять свой динамический IP сразу на всех сервисах, в которых имеется регистрация, практически одним кликом.

Как обычно, сначала нужно зарегистрироваться, а затем добавить сервис через функцию Add Service (например, из тех, что были перечислены выше). Далее. следует внести данные, использовавшиеся для регистрации именно в этих сервисах (User ID - адрес электронной почты, Password - пароль, Host/Identifier - имя домена третьего уровня, который был сгенерирован сервисом. По окончании ввода данных о привязке сервиса к аккаунту можно узнать по появившейся иконке в виде зеленой кисти руки с поднятым вверх большим пальцем напротив учетной записи указанного сервиса.

ZoneEdit

Все вышеперечисленные сервисы относятся к бесплатным. Теперь обратите внимание на данную службу.

Ее использование оплачивается в виде специальных «кредитов», стоимость которых приравнена к одному доллару США. То есть на год оплата составит двенадцать у. е. Процедура регистрации и настройки практически точно такая же, как и в первых примерах, поэтому останавливаться на ней подробно смысла нет.

DynDNS

Перед нами, пожалуй, самая популярная служба, хотя и не бесплатная. Стоимость ее использования стартует от двадцати пяти долларов в год.

Кстати сказать, даже при активации DDNS на роутере, если такая функция предусмотрена, пользователю в большинстве случаев будет предложено зарегистрироваться именно в этом сервисе. Несмотря на платное использование, DynDNS, как отмечает подавляющее большинство экспертов, является самой надежной службой. Еще один момент связан с тем, что практически все современные модели роутеров поддерживают этот сервис, а некоторые устройства с устаревшими прошивками только на него и ориентированы.

Приветствую, мозгоинженеры ! А не объединить ли нам наши интернет-устройства в доме с помощью DNS-сервера, сделанного своими руками из WiFi-модуля и интерфейса веб-камеры Foscam? Думаю будет интересно, поэтому поехали!

Выбранная для этой самоделки веб-камера Foscam управляется прямо со смартфона, имеет собственный веб-интерфейс, работает в любом браузере и на любом девайсе, даже с 3G-соединением вашего телефона, сторонних приложений не требует и защищается паролем.

Видео-потоки с камер транслируются в отдельных окнах, быстро и безупречно, и под полным контролем.

Хочу предупредить сразу - Я НЕ НЕСУ ОТВЕТСТВЕННОСТИ за неправильное использование или ущерб, причиненный этим проектом, любым способом! Вы действуете на свой страх и риск!

Что для этого мозгопроекта необходимо:

  • веб-сервер с поддержкой PHP c доменным именем,
  • wi-fi модуль Esp8266 ESP-01,
  • нажимная кнопка - 2шт.,
  • подтягивающий резистор 2к2 или аналогичный - 2шт.,
  • адаптер USB-TTL (для программирования wi-fi модуля) и несколько пин-разъемов («мама»),
  • регулятор напряжения Ams1117 3.3В (для снижения напряжения 5В до 3.3В, чтобы запитать wi-fi модуль),
  • блок питания 5В 1-2А (желательно 2А),
  • в первом варианте компоновки: если внутри корпуса блока питания есть достаточно места, то wi-fi модуль помещается внутрь этого корпуса,
  • во втором варианте компоновки: блок питания имеет USB-разъем «мама», тогда придется к плате модуля добавить USB-разъем «папа» и с помощью него подавать питание,
  • сломанная USB-флешка,
  • обновленная программа Arduino IDE
  • дополнительно: веб-камеры Foscam для работы с веб-интерфейсом
  • для обеспечения: мерцающий светодиод, для индикации успешной загрузки и ожидания загрузки
  • внутренний сервер разрешающий WAN IP (данная версия соединяется с внешним сайтом для получения IP: checkip.dyndns.org).

Шаг 1: Подготовка Wi-Fi модуля для программирования

Для того, чтобы модуль можно было программировать его нужно слегка доработать:

  • припаять два резистора — один к контакту CH-PD, второй к RST, оба свободных вывода резисторов припаять к контакту 3.3V,
  • припаять две нажимные кнопки - одну между контактами GPIO0 и Ground, а другую между RST и Ground.

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

В следующем шаге будет дорабатываться блок питания, но сразу предупреждаю: USB-выход вашего компьютера не подходит для запитывания модуля ESP!!!

Шаг 2: Доработка блока питания - понижение напряжения с 5 до 3.3В

5В-й блок питания должен выдавать «надежный» 1А, а лучше 2А, так как во время передачи Wi-Fi-сигнала модуль довольно «прожорлив».

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

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

контакт 3 — 5В (оранжевый провод)
контакт 2 - 3.3В (желтый провод)
контакт 1 — GND (два синих провода)

К контактам можно припаять несколько проводов со штырьковыми разъемами, тем самым получить одновременно два источника напряжения на 5В и 3.3В, что весьма полезно при сборке на макетной плате. В таком случае не забываем добавить и два заземляющих провода, для +3 и +5В, а для надежности все проводки скрепить пластиковым хомутом-стяжкой.

Для подключения этих проводов к модулю ESP (имеющего «папа»-разъемы) понадобятся промежуточные провода со штырьковыми «мама»-разъемами на концах.

Шаг 3: Подключение Wi-Fi модуля к USB-TTL-адаптеру и регулятору напряжения 3.3В

Соединения (модуль - адаптер — регулятор)

GND — — — — GND- — — — GND
ТХ — — — — — RX
RX — — — — — ТХ
3,3 — — — — — — — — — — — — — 3,3

Контакты заземления (Ground) регулятона напряжения, модуля и адаптера соединяем вместе, 3.3В идущие от регулятора соединяем ко входу ESP-модуля.

Ни в коем случае не соединяем модуль ESP c контактом 3.3В адаптера, даже если они на нем имеются, так как тем самым можно испортить USB-порт компьютера, ведь он не имеет защиты от тока такого номинала, которые используется в этой мозгоподелке ! А для запитывания ESP-модуля всегда используйте источник питания с требуемыми параметрами.

Следует знать, что некоторые TTL-USB адаптеры имеют 5В-ю логическую схему, которая для нашей поделки не подходит, нужна только 3.3В-я логика, иначе повредится ESP-модуль. Тип логики можно определить с помощью вольтметра, подсоединив его щупы к контактам ТХ и Ground, и при необходимости понизить напряжение можно добавлением сдвига уровня или делителя напряжения.

Шаг 4: Настройка файлов на веб-хостинге

Создаем папку «/ip» (имя чувствительно к регистру) в корневом каталоге вашей папки public_html, и распаковываем в нее /ip файлы с разрешением 644.

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

input.php и input2.php генерируют согласно URL-адреса браузера ip.txt и ip2.txt с обновленным IP модуля ESP8266, текущий код поддерживает 2-е разных локации, и чтобы добавить что-то еще вам нужно лишь отредактировать эти файлы.

Для управления FOSCAM-камеры необходимо создать папку «/cam» (опять же, регистр чувствителен) в корневом каталоге папки public_html, и распаковать в нее /cam-файлы с разрешением 644. Эту папку защитить мозгопаролем , если на вашем сервере доступна cpanel, то можете найти иконку «защита паролем» и задать пароль, который будет запрашиваться при указании браузеру перейти на www.yourhost/cam, тогда в любой браузере будет всплывать диалоговое окно с запросом этого пароля, все это защитит доступ к камерам.

foscam.php содержит интерфейс камерр, а еще метку дата/время ip-файлов и текущий ip локации. По метке дата/время можно видеть работает ли модуль. При этом часовой пояс может отображаться не верно, так как он показываетт время на сервере.

IP можно изменить вручную, он будет записан в ip.txt и ip2.txt, и для этого нужно ввести ip в поле и нажать обновление ip.

interface.png и interface2.png это прозрачные изображения задающие интерфейсу как будет отображаться экран. Необходимо подредактировать foscam.php и задать значение, static или ptz, соответствующее вашей FOSCAM-камере. По умолчанию разрешение 320х240, но кликнув на центр управления, открывается только эта камера с лучшей частотой обновления при разрешении 640х480.

Для редактирования foscam.php можно воспользоваться редактором кода или HTML-редактором, который может работать в режиме WYSWYG.

Во время работы мозгоплаты будут автоматически записываться файлы ip.txt и ip2.txt, содержащие обновленные ip двух локаций, где могут работать две разные платы. Каждый час (или когда вы зададите) плата будет подключаться к роутеру по wi-fi, получать ip-адрес и прописывать его в txt-файле на сервере. И даже в случае потери соединения с интернетом или отключения питание, то после устранения этих неполадок, ip будет периодически обновляться.

Шаг 5: Настройка FOSCAM-камер и роутера

На странице конфигурации TP-LINK-роутера:

Смотрим настройки на фото, они помогут избежать конфликта при связывании МАС-адреса и LAN-ip, роутер будет предоставлять для этого МАС-адреса только закрепленные LAN-ip.

Virtual servers (виртуальные серверы) - необходимо добавить локальные ip вашей камеры и соответствующие порты.

DHCP сервер выставляем включенным, а также проверяем включен ли UpnP.

Можно также настроить удаленное управление вашим роутером, для TP-Link-роутера есть соответствующий подпункт брандмауэра.

Не изменяйте логин по умолчанию, так как роутер должен быть публичен. Далее в соответствующих мозгополях следует выставить 255.255.255.255 и порт, как правило, 8080.
На странице настроек FOSCAM камер:

Имя и пароль - следует задать новое имя и пароль, и не забыть «найти и заменить» их в foscam.php вместо admin и password.

Для «Основных параметров сети (Basic Network settings)» задать: «Obtain IP from DHCP Server» (Получать IP от DHCP-сервера).
В пункте Http Port задать: 8081, 8082 8083 последовательно на ваши камеры.
В UPnP Settings выставить: Using UPnP to Map Port. Это поможет восстановить соединение после отключения питания.

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

Если камеры и роутер настроены верно, то к ним можно удаленно получить доступ с вашего Wan IP-адреса, например такого: http://187.34.157.22:8081 . Свой Wan IP можно проверить на https://www.whatismyip.com/

Шаг 6: Кодирование и программирование модуля ESP8266 с помощью Arduino IDE

Для программинга самоделки необходимо в Arduino IDE открыть прилагаемый скетч, и в соответствующих строках задать ssid «//your wifi ssid» и пароль «//your wifi pwd» вашего WiFi-роутера, а также имя вашего хоста «//your host without /IP» и путь к папке «/ip», содержащей файлы сервера, ее менять не нужно.

Возможно понадобится изменить строку

url += «input.php?ip=»;

которая дважды встречается в скетче, и если у вас есть второй модуль, то просто измените на input2.php.

Перед началом загрузки кода необходимо правильно выставить тип платы, для этого подменю инструментов следует выбрать «Generic ESP8266», а если такого нет, то в предпочтениях добавить дополнительные платы.

Для загрузки нужно, удерживая нажатой кнопку GPIO0, быстро нажать кнопку RST, а потом отпустить и предыдущую (кнопку GPIO0). Далее в IDE запустить компиляцию и мозгозагрузку .

Если все идет правильно, то открыв монитор последовательного порта со скоростью 9600 бод (бит/с), вы увидите следующее:

Connected To:
IP address: 192.168.0.103 (LAN IP)
Connected — Acquiring WAN IP:

connecting to
Requesting IP Update: /ip/input.php?ip=xxx.xxx.xxx.xxx
Ok

Шаг 7: Монтаж плат в корпус

После проверки самоделки на работоспособность необходимо поместить ее электронику в корпус, сделав тем самым самостоятельный завершенный девайс.

Если в выбранном вами корпусе для мозгоподелки есть достаточно свободного пространства, то резисторы и кнопки можно подключить так, как показано на фото, но если позднее вы планируете ее перепрограммировать, то размещать плату внутри корпуса не стоит.

Первый вариант: Размещение внутри корпуса
Для этого нужно вскрыть корпус старого блока питания, выпаять черный (выходящий) провод с разъемом, а затем поместить в корпус плату модуля и регулятор напряжения, предварительно заизолировав их, и «запитать» от тех контактов, к которым был припаян выходящий провод. Заизолировать компоненты можно с помощью подходящей пористой ленты или горячего клея.
В итоге должен получиться блок питания, без каких-либо проводов, и в данном варианте блок питания может быть 5В 1А.

Вариацией данного способа компоновки может быть размещение плат внутри блока питания, имеющего на выходе USB-разъем «мама». Тогда платы также следует закрепить внутри корпуса, заизолировать, и запитать их от контактов USB-разъема. Тем самым посредством этого доработанного блока питания вы все еще сможете заряжать свой телефон, но правда блок питания должен выдавать 5В 2А.

Вариант 2: Размещение снаружи
Если у вас есть нерабочая флешка, в корпус которой могут поместиться платы самоделки , то можно использовать ее.

Нужно разобрать флешку, вынуть плату памяти, а на ее место поместить WiFi-модуль и регулятор напряжения, и запитать их через USB-разъем этой флешки. При этом понадобится еще подрезать штырьковые контакты модуля, чтобы он поместился в корпус флешки. И НИКОГДА НЕ ПОДКЛЮЧАЙТЕ эту доработанную флешку к USB-порту компьютера!

Затем флешку с модулем внутри нужно подключить к блоку питания и проверить наличие WiFi сигнала с помощью вашего смартфона. А в целом проверить работоспособность готовой мозгоподелки можно посредством вашего брузера зайдя на /cam/foscam.php вашего сервера. И еще, следует обновится с текущим ip и меткой дата/времени.
На этом все, надеюсь информация этой мозгостатьи будет вам полезна!