Ad Widget

Collapse

ДНС

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Polkovnikiv
    Member
    • Sep 2013
    • 71

    #1

    ДНС

    Добрый день.
    Подскажите, каким образом можно мониторить работу ДНС. Интересует не доступность сервера по пингу, а способность им отрабатывать запросы клиентов.
    Каким образом создать элемент данных и настроить триггер. Какой ключ использовать?
    Заранее спасибо
  • sadman
    Senior Member
    • Dec 2010
    • 1611

    #2
    Слишком общий вопрос.

    Для MS DNS можно, например, помониторить следующее:

    dns.conf, Windows Server 2008R2 Rus
    Code:
    #\DNS\Общее число полученных запросов
    PerfCounter = perf.dns.counter[total_query_received],"\6360\6362",1
    #\DNS\Отправлено всего ответов
    PerfCounter = perf.dns.counter[total_response_sent],"\6360\6374",1
    #\DNS\Рекурсивных ошибок запросов
    PerfCounter = perf.dns.counter[recursive_query_failure],"\6360\6394",1
    #\DNS\Рекурсивных таймаутов отправления
    PerfCounter = perf.dns.counter[recursive_send_timeouts],"\6360\6390",1
    А триггеры, наверное, можно поднимать по прекращению роста ответов или по росту ошибок рекурсивных запросов.
    Надо вам понять, что конкретно будет считаться ошибкой.

    Comment

    • Polkovnikiv
      Member
      • Sep 2013
      • 71

      #3
      Интересует проверка работоспособности ДНС сервиса.
      Нет необходимости в статистике отработки запроса.

      Comment

      • sadman
        Senior Member
        • Dec 2010
        • 1611

        #4
        Странное понимание работоспособности DNS, конечно.
        В вашем случае можно использовать, например (ключ / триггер):
        1) для Windows
        Code:
        service_state["DNS"] / {DNS Server:service_state["DNS"].last(0)}>1
        2) для *nix
        Code:
        proc.num[named] / {DNS Server:proc.num[named].last(0)}<1

        Comment

        • Polkovnikiv
          Member
          • Sep 2013
          • 71

          #5
          Originally posted by sadman
          Странное понимание работоспособности dns, конечно.
          В вашем случае можно использовать, например (ключ / триггер):
          1) для windows
          Code:
          service_state["dns"] / {dns server:service_state["dns"].last(0)}>1
          2) для *nix
          Code:
          proc.num[named] / {dns server:proc.num[named].last(0)}<1
          Интересен второй вариант.
          Но выдает ошибку при тесте-некорректные данные.
          Выставлял в элементах данных: простая проверка-числовое (целое полож)-десятчное.

          Comment

          • sadman
            Senior Member
            • Dec 2010
            • 1611

            #6
            Берете zabbix_get и начинаете с командной строки проверять, что вам отдает zabbix_agent при запросе проверяемого ключа. Я же не знаю, кто там днс-ом висит в процессах - named или bind.

            Comment

            • yukra
              Senior Member
              • Apr 2013
              • 1359

              #7
              Originally posted by Polkovnikiv
              Выставлял в элементах данных: простая проверка-числовое (целое полож)-десятчное.
              Простая проверка? Не угадали. Пишите заббикс-агент (активный по желанию). Но таким триггером вы мониторите что у вас named запущен, а не то, что он "корректно работает". Если нужно именно "корректно работает", то лучше сделать внешнюю проверку типа
              Code:
              dig ya.ru @<IP_or_FQND_SERVER_NAME> +short > /dev/null && echo 1 || echo 0
              Например:
              Code:
              $ dig ya.ru @1.1.1.1 +short > /dev/null && echo 1 || echo 0
              0
              $ dig ya.ru @8.8.8.8 +short > /dev/null && echo 1 || echo 0
              1

              Comment

              Working...