Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: DynDNS своими руками через яндекс.  (Прочитано 4393 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Schneider

  • Автор темы
  • Участник
  • *
  • Сообщений: 173
    • Просмотр профиля
Re: DynDNS своими руками через яндекс.
« Ответ #15 : 07 Марта 2017, 20:36:22 »
Dlink DynDNS адрес третьего уровня бесплатно могу прикрутить, но только так, свой адрес типа site.ru там не позволяют использовать.
Если уже есть любое имя, то просто сделать CNAME.
DNS яндексом пользуюсь, че то пробовал, не позволяют вроде. или я не разобрался до конца.

PS. яндекс пишет, для корневой записи (домен второго уровня получается) нельзя установить CNAME ,а я так хотел сначала.
но потом прописал CNAME на ДлинкДДНС с поддомена третьего уровня, - пригодится.
« Последнее редактирование: 07 Марта 2017, 22:48:22 от Schneider »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28366
    • Просмотр профиля
Re: DynDNS своими руками через яндекс.
« Ответ #16 : 08 Марта 2017, 00:44:15 »
Это не яндекс, это правило.
Отчасти поэтому много сайтов имеет в имени паразитный префикс "www.".
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн Schneider

  • Автор темы
  • Участник
  • *
  • Сообщений: 173
    • Просмотр профиля
Re: DynDNS своими руками через яндекс.
« Ответ #17 : 19 Марта 2017, 00:03:26 »
UPDATE
Вот новая версия скрипта.
changelog
1.изменен способ изменения записей, теперь через curl
2.добавлена возможность редактировать spf запись
3.запрос IP адреса делается не на внешнем сервисе, а из роутера через который сервер подключен к SIP

! Для того чтобы заработало необходим роутер подключенный к вашему домашнему серверу по com-порту,
а так необходимо знать его команды CLI , точнее какая из них выдает инфу о вашем подключении к интернет.
В моем случае это Dlink DFL-210 , так что у кого модель DFL-XXXX тем подойдет!
(Нажмите, чтобы показать/скрыть)

сохранить скрипт в /usr/bin/yaDDNSv2
разрешить выполнять chmod ......
добавить в crontab
45 * * * * yaDDNSv2 >> /tmp/yaDDNSv2.log 2>&1 &без пятнадцати минут каждого часа будет срабатывать
и отчитываться в лог /tmp/yaDDNSv2.log
« Последнее редактирование: 19 Марта 2017, 00:08:44 от Schneider »

Оффлайн Schneider

  • Автор темы
  • Участник
  • *
  • Сообщений: 173
    • Просмотр профиля
Re: DynDNS своими руками через яндекс.
« Ответ #18 : 05 Апреля 2017, 23:34:37 »
UPDATE
ver 3.3
name yaDDNSv33

changelog.
1. переход на bash
2. чтение данных с com-порта в отдельном процессе
3. сохранение последнего IP в файл
4. проверка IP адресов на соответствие шаблону
5. поправлено ведение лога

Особенно пришлось попотеть с чтением данных из com-порта. Если IP адрес по какой то причине grep не получала, а это время от времени происходило (что то глючит stty или вроде того или просто com-порт отключен, роутер выключен... итп), то процесс (и скрипт с ним) зависал и с ком-порта продолжал сыпаться мусор (или ....). Дальнейшие повторные пуски скрипта так же висли...
Сначала прикрутил kill $$ , т.е. убить родительский процесс дочерним, если за отведенное время скрипт не заканчивал работать. Но не понравилось, то что основной процесс вырубался с малоинформативной фразой "Завершено", вывод echo из дочернего ну никак не хотел попадал в stdout. По всякому пробовал, из дочернего процесса переменную тоже не получишь. Наконец остановился на передаче данных в файл, и kill $! - последнего фонового (дочернего) процесса. Очень удачно получилось с информативным echo.
 Ну и в файл действующий IP сохранять стал, чтобы не дергать(читать всякий раз) DNS записи, а из файла читать. Только лишь раз в сутки сверяться.

(Нажмите, чтобы показать/скрыть)
« Последнее редактирование: 12 Апреля 2017, 20:48:28 от Schneider »

 

Страница сгенерирована за 0.032 секунд. Запросов: 25.