web-dev-qa-db-ja.com

dnsmasqによって検出されたすべてのネームサーバーを使用するようにUbuntuを構成する方法は?

DnsmasqがVPN上のネームサーバーを正常に検出しても、内部VPNネットワーク上のDNS名の解決に問題があります。以下は、/var/log/syslogからの関連する出力です。

/var/log/syslog.1:Oct 13 19:07:58 snowman NetworkManager[840]: <info> DNS: starting dnsmasq...
/var/log/syslog.1:Oct 13 19:07:58 snowman NetworkManager[840]: <warn> dnsmasq not available on the bus, can't update servers.
/var/log/syslog.1:Oct 13 19:07:58 snowman NetworkManager[840]: <error> [1413241678.445577] [nm-dns-dnsmasq.c:396] update(): dnsmasq owner not found on bus: Could not get owner of name 'org.freedesktop.NetworkManager.dnsmasq': no such name
/var/log/syslog.1:Oct 13 19:07:58 snowman NetworkManager[840]: <warn> DNS: plugin dnsmasq update failed
/var/log/syslog.1:Oct 13 19:07:58 snowman dnsmasq[1052]: started, version 2.68 cache disabled
/var/log/syslog.1:Oct 13 19:07:58 snowman dnsmasq[1052]: compile time options: IPv6 GNU-getopt DBus i18n IDN DHCP DHCPv6 no-Lua TFTP conntrack ipset auth
/var/log/syslog.1:Oct 13 19:07:58 snowman dnsmasq[1052]: DBus support enabled: connected to system bus
/var/log/syslog.1:Oct 13 19:07:58 snowman dnsmasq[1052]: warning: no upstream servers configured
/var/log/syslog.1:Oct 13 19:07:59 snowman NetworkManager[840]: <warn> dnsmasq appeared on DBus: :1.13
/var/log/syslog.1:Oct 13 19:07:59 snowman dnsmasq[1052]: setting upstream servers from DBus
/var/log/syslog.1:Oct 13 19:07:59 snowman dnsmasq[1052]: using nameserver 192.168.1.1#53
/var/log/syslog.1:Oct 13 19:07:59 snowman dnsmasq[1052]: using nameserver 10.1.90.6#53
/var/log/syslog.1:Oct 13 19:07:59 snowman dnsmasq[1052]: using nameserver 10.4.4.9#53

明らかに、dnsmasqは、接続のすべてのアップストリームネームサーバーを正しく自動的に検出できました。ただし、私のシステムは、何らかの理由ですべてのシステムにDNS解決を問い合わせることができません。

ping: unknown Host source

関連するnslookup出力:

> server
Default server: 127.0.1.1
Address: 127.0.1.1#53
> source
Server:     127.0.1.1
Address:    127.0.1.1#53

** server can't find source: NXDOMAIN
> server 10.1.90.6
Default server: 10.1.90.6
Address: 10.1.90.6#53
> source
Server:     10.1.90.6
Address:    10.1.90.6#53

Name:   source.<REDACTED>
Address: 10.4.4.44

私のシステムで実行される完全なdnsmasqコマンドは次のとおりです。

1052 ?        S      0:00 /usr/sbin/dnsmasq --no-resolv --keep-in-foreground --no-hosts --bind-interfaces --pid-file=/run/sendsigs.omit.d/network-manager.dnsmasq.pid --listen-address=127.0.1.1 --conf-file=/var/run/NetworkManager/dnsmasq.conf --cache-size=0 --proxy-dnssec --enable-dbus=org.freedesktop.NetworkManager.dnsmasq --conf-dir=/etc/NetworkManager/dnsmasq.d
1
Lupius

Dnsmasq confファイルを/usr/share/doc/dnsmasq-base/examples/dnsmasq.conf.exampleから/etc/NetworkManager/dnsmasq.d/dnsmasq.confにコピーし、strict-orderを有効にして、すべてのネームサーバーにアクセスし、Sudo restart network-managerでdnsmasqサービスを再起動する必要がありました。

strict-orderが無効になっているデフォルトの動作は正しいとは思いません。 Launchpadにバグを報告すると思います...

0
Lupius