Установка pdnsd сервер

Я установил pdnsd: это правильно работает.

Моя проблема состоит в том, что это игнорирует opendns сервер, который я обеспечил в разделе "сервера" маркированного "resolvconf" pdnsd.conf: вместо него он использует сервер, который обеспечивается dhcp.

С другой стороны, если я меняю имя раздела сервера к чему-то еще, затем pdnsd правильно использует opendns сервер, но resolvconf помещают DNS, предоставленный dhcp в resolv.conf, таким образом, pdnsd обойден.

Так, мой вопрос: как у меня может быть resolv.conf набора resolvconf к 127.0.0.1, И pdnsd используют opendns сервер, когда запрос не кэшируется?

Одно обходное решение, которое я нашел, должно установить в администраторе сети, "DHCP (обращаются только)", для соединения, но проблема с этим состоит в том, что это должно быть установлено для каждого различного соединения: это означает, что при использовании ноутбука, необходимо изменить его для каждого Wi-Fi, с которым Вы соединяетесь!

1
задан 29 April 2014 в 23:10

1 ответ

Я думаю, что нашел меня решением: добавление

supersede domain-name-servers 127.0.0.1;

кому: /etc/dhcp/dhclient.conf делает задание.

Таким образом, возможно, для кого-то еще может быть полезно, если я пишу, мое короткое практическое руководство, чтобы иметь работу pdnsd в человечности с фиксированным (скажите, opendns), сервер доменных имен, независимо от используемого соединения.

  • Отключите dnsmasq путем редактирования /etc/NetworkManager/NetworkManager.conf и комментирование #dns=dnsmasq
  • Вынудите администратора сети установить DNS на 127.0.0.1 для каждого соединения путем добавления

    supersede domain-name-servers 127.0.0.1;
    

    кому: /etc/dhcp/dhclient.conf

  • Установка pdnsd
  • Править /etc/default/pdnsd и набор START_DAEMON=yes
  • Настройте pdnsd для использования любимого DNS. Например, для использования opendns Ваш /etc/pdnsd должен быть похожим как

    global {
     perm_cache=16536;
     cache_dir="/var/cache/pdnsd";
     max_ttl=604800;
     run_as="pdnsd";
     paranoid=on;
     status_ctl=on;
     neg_rrs_pol=on;
     par_queries=1;
    }
    server {
     label="opendns";
     ip="208.67.222.222","208.67.220.220";
     timeout=30;
     interval=30;
     uptest=ping;
     ping_timeout=50;
     purge_cache=off;
     proxy_only=on;
    }
     source {
     ttl=86400;
     owner="localhost.";
     file="/etc/hosts";
    }
    
  • Перезапустите pdnsd и сетевое соединение:

    sudo service pdnsd restart
    sudo invoke-rc.d network-manager restart
    
2
ответ дан 11 November 2019 в 09:39

Другие вопросы по тегам:

Похожие вопросы: