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

    BIND разные записи зоны в зависимости от Views

    Scheduled Pinned Locked Moved Russian
    3 Posts 2 Posters 314 Views
    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
      armrus
      last edited by

      Затея такая:
      В зависимости от того, на какой адрес (у нас два внешних IP) приходит DNS запрос выдавать разный ответ.
      Попытка реализовать была такая:
      У Регистратора домена сослал на свой DNS сервер
      0_1552051928692_Screenshot_2019-03-08 Изменение данных по действующим услугам.png
      Далее создал зону
      0_1552056345667_Screenshot_2019-03-08 pf armrus org - BIND Zones Settings Редактировать Zones.png

      У меня заготовлено три Views отдельно для двух входящих интерфейсов и для любого входящиего запроса.
      0_1552056520242_Screenshot_2019-03-08 pf armrus org - Пакет BIND Views Settings Views.png

      При работе с этим вариантом зона успешно отдает информацию на оба интерфеса
      0_1552056573539_Screenshot_2019-03-08 pf armrus org - BIND Views Settings Редактировать Views.png

      alex@alexHome:~$ dig egrn.club @37.139.52.66
      
      ; <<>> DiG 9.11.3-1ubuntu1.5-Ubuntu <<>> egrn.club @37.139.52.66
      ;; global options: +cmd
      ;; Got answer:
      ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 55124
      ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
      
      ;; OPT PSEUDOSECTION:
      ; EDNS: version: 0, flags:; udp: 4096
      ; COOKIE: 840d1cc5b894cfa418d426e15c82807603ba3d6da239d368 (good)
      ;; QUESTION SECTION:
      ;egrn.club.                     IN      A
      
      ;; ANSWER SECTION:
      egrn.club.              15      IN      A       37.139.52.66
      
      ;; AUTHORITY SECTION:
      egrn.club.              15      IN      NS      ns.egrn.club.
      
      ;; ADDITIONAL SECTION:
      ns.egrn.club.           15      IN      A       37.139.52.66
      
      ;; Query time: 88 msec
      ;; SERVER: 37.139.52.66#53(37.139.52.66)
      ;; WHEN: Fri Mar 08 17:47:18 MSK 2019
      ;; MSG SIZE  rcvd: 115
      
      alex@alexHome:~$ dig egrn.club @46.32.70.243
      
      ; <<>> DiG 9.11.3-1ubuntu1.5-Ubuntu <<>> egrn.club @46.32.70.243
      ;; global options: +cmd
      ;; Got answer:
      ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 23386
      ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
      
      ;; OPT PSEUDOSECTION:
      ; EDNS: version: 0, flags:; udp: 4096
      ; COOKIE: 2e6b32694f80c2e6e801c6505c82807b467b2857fca4bd6d (good)
      ;; QUESTION SECTION:
      ;egrn.club.                     IN      A
      
      ;; ANSWER SECTION:
      egrn.club.              15      IN      A       37.139.52.66
      
      ;; AUTHORITY SECTION:
      egrn.club.              15      IN      NS      ns.egrn.club.
      
      ;; ADDITIONAL SECTION:
      ns.egrn.club.           15      IN      A       37.139.52.66
      
      ;; Query time: 5 msec
      ;; SERVER: 46.32.70.243#53(46.32.70.243)
      ;; WHEN: Fri Mar 08 17:47:23 MSK 2019
      ;; MSG SIZE  rcvd: 115
      
      alex@alexHome:~$
      

      Если переключить зону на этот вариант, не работает :(
      0_1552056687022_Screenshot_2019-03-08 pf armrus org - BIND Views Settings Редактировать Views(1).png

      alex@alexHome:~$ dig egrn.club @37.139.52.66
      
      ; <<>> DiG 9.11.3-1ubuntu1.5-Ubuntu <<>> egrn.club @37.139.52.66
      ;; global options: +cmd
      ;; Got answer:
      ;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 14583
      ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
      
      ;; OPT PSEUDOSECTION:
      ; EDNS: version: 0, flags:; udp: 4096
      ; COOKIE: b4c0620540950c7e9f8510e45c828188118aa1cf5ad2f1e5 (good)
      ;; QUESTION SECTION:
      ;egrn.club.                     IN      A
      
      ;; Query time: 1229 msec
      ;; SERVER: 37.139.52.66#53(37.139.52.66)
      ;; WHEN: Fri Mar 08 17:51:52 MSK 2019
      ;; MSG SIZE  rcvd: 66
      

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

      1 Reply Last reply Reply Quote 0
      • werterW
        werter
        last edited by werter

        Добрый.

        А чем обусловлен выбор в пользу доп. установки Bind ?
        Если я правильно понимаю, такие вещи настраиваются прямо у регистратора, используя их dns-серверы. Зачем выставлять во вне свой локальный dns-сервер (прийдется его еще и в DMZ на пф совать)? Не избыточно ли такое решение?

        Если задача в том, чтобы выдавать разные ip-адреса одного и того же ресурса локальным и внешним клиентам (Split DNS), то для внешних это настраивается у хостера, а для локальных решается принудительным заворачиванием dns-запросов локальных клиентов на локальный ip пфсенс-а и использованием dns resolver-a.

        Поясните более доходчиво, пож-та, чего добиваетесь.

        P.s. Может тут что-то есть?
        http://break-people.ru/cmsmade/index.php?page=unix_webmin_howto_dns_using_bind_dns_views

        https://www.opennet.ru/openforum/vsluhforumID1/95126.html

        Можно ли сделать так, чтобы BIND выдавал определённый View зоны в зависимости от интерфейса, с которого пришёл запрос?

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

        http://opennet.ru/openforum/vsluhforumID1/89652.html

        Возможно Вам не нужно views?
        Сделаете одну основную зону для локальных адресов, остальные запросы bind может пересылать
        на DNS "forwarders"- секция forwarders в man named.conf.

        Именно так и сделал. Всем спасибо!

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

          Затея выдавать разные ip одного и того же ресурса в зависимости от доступности этого ip. Есть два провайдера интернета, оба не стабильные, два внешних ip адреса соответственно. Необходимо научить bind выдавать разные записи зоны в зависимости от того на какой ip к нему пришёл запрос, те в зависимости какой канал сейчас доступен. Регистратор пояснил, что у них такие настройки не сделать.

          1 Reply Last reply Reply Quote 0
          • First post
            Last post
          Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.