Navigation

    Netgate Discussion Forum
    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search

    DDNS через API Yandex

    Russian
    4
    8
    958
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • A
      aleks077 last edited by

      Приветствую уважаемый форум!

      Есть PfSense 2.4.2-RELEASE-p1  с двумя каналами Интернет.
      За шлюзом в локальной сети есть сервис, на который проброшены порт с внешних белых IP обоих каналов.
      Есть записи в DNS-зоне домена, которая размещена на Яндексе, типа
      gw.domen.ru - 1.1.1.1 (ISP1)
      gw.domen.ru - 2.2.2.2 (ISP2)

      Хочется изменять эти записи в зоне через API Яндекса при срабатывании dpinger (падении канала), чтобы клиенты сервиса получали IP рабочего на данный момент канала.

      Заглянув в Dynamic DNS, понял, что если и можно, то только через Custom настройку.

      Никто не поделиться своим подобным опытом? Можно вообще использовать эту форму для API?

      Если нет, то в принципе, могу с помощью CURL отправлять нужную строчку в API Яндекса, но не могу найти/понять, по какому событию/логу это делать?
      Заранее благодарен за любую наводку
      Александр

      1 Reply Last reply Reply Quote 0
      • P
        pigbrother last edited by

        IMHO, конечно, но Яндекс DNS - не самый простой\лучший выбор для DDNS, да и создавался он не для этого.
        Хотя народ и использует его так, как хотите вы:
        Собственно API:
        https://tech.yandex.ru/pdd/doc/reference/dns-edit-docpage/
        https://habrahabr.ru/sandbox/102896/
        https://toster.ru/q/20548

        Можете оставить свои записи DNS, если они привязаны к статическим IP, а для DDNS использовать специальные бесплатные сервисы:
        Старый, проверенный. Использую сам:
        http://freedns.afraid.org/

        https://www.duckdns.org/install.jsp
        есть инструкция для pfSense

        http://freemyip.com/help
        Недавно рекомендован werter,  есть инструкция для pfSense
        и т.д.

        1 Reply Last reply Reply Quote 0
        • A
          aleks077 last edited by

          Спасибо за ответ

          Пока не хоте бы рассматривать использование сторонних сервисов.
          Хочется подойти к задаче иначе.
          В принципе, строка, которую надо отправить на Яндекс DNS известна. Это, что-то типа:

          
          curl -H 'PddToken: 123456789ABCDEF0000000000000000000000000000000000000' -d 'domain=domain.com&record_id=1&subdomain=www&ttl=14400&content=127.0.0.1' 'https://pddimp.yandex.ru/api2/admin/dns/edit'
          
          

          Мне бы понять, по какому событию запускать эту строчку? Предположим, dpinger обнаруживает, что за одним из шлюзов нет интернета (не пингуется хост, который указан в качестве Monitoring IP для этого шлюза) - как отследить это событие и по его наступлению запустить скрипт с искомой строкой?
          Я пока вижу только парсить лог по определенной записи, но, честно говоря, для меня это будет сложновато.

          1 Reply Last reply Reply Quote 0
          • P
            pigbrother last edited by

            Мне бы понять, по какому событию запускать эту строчку?
            Я пока вижу только парсить лог по определенной записи
            Мануал говорит, что:
            Whenever an interface changes in some way, DHCP lease renew, PPPoE logout/login, etc, the IP will be updated.

            Что мешает попробовать без парсинга? Для начала не с Яндексом, а с любым иным бесплатным?

            1 Reply Last reply Reply Quote 0
            • A
              aleks077 last edited by

              Попробовал на FreeDNS - что-то не так..
              У меня оба шлюза объеденены в группу

              В Dyn DNS ставлю:
              Interface to monitor - группу шлюзов
              не прописываю ничего, кроме URL Update - туда пишу Direct Link для апдейта записи с http://freedns.afraid.org/dynamic/

              запись на afraid обновляется до IP основного шлюза
              После того, как я делаю Mark this gateway down на основном шлюзе - запись на afraid остается с тем же IP (на данный момент выключенного канала)

              1 Reply Last reply Reply Quote 0
              • P
                pigbrother last edited by

                Мне вообще не понятен смысл нахождения группы шлюзов в настройках DDNS как и попыток привязать к нему этот сервис.
                Поправьте, но IMHO, 1-й WAN, 1-й IP, первое имя;  2-й WAN, 2-й IP, второе имя

                1 Reply Last reply Reply Quote 0
                • A
                  aleks077 last edited by

                  Не могу так поправить - такая комбинация мне не нужна.
                  Еще раз повторю, чего хочу получить:

                  1. в штатном режиме
                    1.1.1.1 - gw.domen.ru - ISP1
                    2.2.2.2 - gw.domen.ru - ISP2

                  далее при падении ISP1 надо получить
                  2.2.2.2 - gw.domen.ru
                  2.2.2.2 - gw.domen.ru

                  или

                  при падении ISP2
                  1.1.1.1 - gw.domen.ru
                  1.1.1.1 - gw.domen.ru

                  Если подобрать "ключик" к API Яндекса, то решение довольно простое - по ID записи меняем ее на другой IP

                  Как такое изобразить с помощью DDNS pfSense я пока не понимаю…

                  1 Reply Last reply Reply Quote 0
                  • viktor_g
                    viktor_g Netgate last edited by

                    сделал feature request:
                    https://redmine.pfsense.org/issues/11294

                    1 Reply Last reply Reply Quote 0
                    • First post
                      Last post

                    Products

                    • Platform Overview
                    • TNSR
                    • pfSense
                    • Appliances

                    Services

                    • Training
                    • Professional Services

                    Support

                    • Subscription Plans
                    • Contact Support
                    • Product Lifecycle
                    • Documentation

                    News

                    • Media Coverage
                    • Press
                    • Events

                    Resources

                    • Blog
                    • FAQ
                    • Find a Partner
                    • Resource Library
                    • Security Information

                    Company

                    • About Us
                    • Careers
                    • Partners
                    • Contact Us
                    • Legal
                    Our Mission

                    We provide leading-edge network security at a fair price - regardless of organizational size or network sophistication. We believe that an open-source security model offers disruptive pricing along with the agility required to quickly address emerging threats.

                    Subscribe to our Newsletter

                    Product information, software announcements, and special offers. See our newsletter archive to sign up for future newsletters and to read past announcements.

                    © 2021 Rubicon Communications, LLC | Privacy Policy