nvrsk Posted November 2, 2018 Share #1 Posted November 2, 2018 вступление: делал для знакомого просто в рамках личного интереса и "роста над собой", и подумалось, что может ещё кому-нибудь пригодиться. особенного и уникального тут ничего нет - просто собрал воедино. итак, задача тривиальная: человек от провайдера получает IP динамически, и хочет этот IP присваивать какому-нить домену. в DSM уже есть туча препрописанных динамических DNS-сервисов, но на поверку оказывается, что они требуют регистрацию и своевременную оплату (по крайней мере те, что я проверил), а платить как-то очень не хочется. по поиску бесплатности нагуглился отечественный сервис: hldns.ru для регистрации требуется только ввести рабочий email-адрес и выбрать желаемое свободное имя для домена третьего уровня, после чего в ящик сначала поступит письмо с ссылкой+кодом активации аккаунта, а после этого - письмо с инструкцией по применению. обращаю внимание, что письмо приходит с адреса "info@hldns.ru" для "undisclosed-recipients:;", поэтому может упасть в "спам" - имейте в виду. если кто-то захочет потестить у себя без регистрации - можно временно использовать имя "xpenology.hldns.ru", которое я сделал как раз для этого. для работы сервиса достаточно создать простую задачу [DSM 5.2 English]: Control Panel -> Task Scheduler -> Create -> User-defined script Task: название для задачи User: root User-defined script: wget -O /dev/null -o /dev/null http://hldns.ru/update/L4QSD3BR54E11NUNMF65HA1SEQNFUN далее, переключить вверху на закладку "Schedule": Run: Daily First run time: 00 00 Frequency: Every 10 minutes [частоту обновления не следует ставить чаще, чем раз в 5 минут - ограничение сервиса] Last Run Time: 23:50 [при 5-минутном обновлении - 23:55] и нажать "OK". для DSM 6.1 всё примерно так же, разница только команде создания задачи: Control Panel -> Task Scheduler -> Create -> Scheduled Task -> User-defined script а сам "User-defined script" выделен в отдельную закладку - "Task Settings" задачи в расписании, в принципе, достаточно для нормальной работы сервиса, но если кто-то хочет перфекционизма - можно ещё добавить в автозагрузку системы: создать скрипт /root/HLDNS.xpenology.ash #!/bin/ash wget -O /dev/null -o /dev/null http://hldns.ru/update/L4QSD3BR54E11NUNMF65HA1SEQNFUN и добавить линк на него в автозапуск: ln -s /root/HLDNS.xpenology.ash /usr/local/etc/rc.d/S99hldns по использованию замечена небольшая малозначительная задержка в обновлении данных DNS. если нужно мгновенное реагирование - можно опрашивать через головной сервер hldns.ru: DiskStation> nslookup xpenology.hldns.ru 91.199.149.129 Server: 91.199.149.129 Address 1: 91.199.149.129 91-199-149-129.vmclouds.ru Name: xpenology.hldns.ru Address 1: 80.240.128.62 DiskStation> nslookup xpenology.hldns.ru 91.199.149.129 Server: 91.199.149.129 Address 1: 91.199.149.129 91-199-149-129.vmclouds.ru Name: xpenology.hldns.ru Address 1: 188.166.230.39 буду рад, если кому-то пригодится. 😃 Quote Link to comment Share on other sites More sharing options...
Olegin Posted November 2, 2018 Share #2 Posted November 2, 2018 9 минут назад, nvrsk сказал: задачи в расписании, в принципе, достаточно для нормальной работы сервиса, но если кто-то хочет перфекционизма - можно ещё добавить в автозагрузку системы: создать скрипт /root/HLDNS.xpenology.ash Уже не помню с какой версии начиная, но в 6.2 точно есть возможность добавить в тот же Планировщик задач в Панели управления в гуе - задачи по событиям: запуск или выключение системы, может тоже кому пригодится, ибо уже незачем городить огород из скриптов в системных папках, а размещать их уже в пользовательских, а задачи в планировщике потом сохраняются в резервной конфигурации *.dss 😏 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.