web-dev-qa-db-ja.com

dnsmasqを使用すると、Digなどが壊れました。

Ubuntu 18.10でdnsmasqをアドレスリゾルバーとして設定しようとしています。

これまでのところ、デフォルトのリゾルバとしてsystemd-resolvedを無効にし、dnsmasqを導入しました。netstat -tulpnを実行すると、次のように表示されます。

> Sudo netstat -tulpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:53              0.0.0.0:*               LISTEN      31609/dnsmasq       
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      561/sshd            
tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      4614/openvpn        
tcp6       0      0 :::53                   :::*                    LISTEN      31609/dnsmasq       
tcp6       0      0 :::22                   :::*                    LISTEN      561/sshd            
udp        0      0 0.0.0.0:53              0.0.0.0:*                           31609/dnsmasq       
udp        0      0 XXX.XXX.XX.XX:YY        0.0.0.0:*                           440/systemd-network 
udp6       0      0 :::53                   :::*                                31609/dnsmasq

dnsmasqがポート53でリッスンしているので、これで今のところうまくいくと思います。

私の/etc/resolv.confは次のようになります。

nameserver 127.0.0.1
nameserver 127.0.1.1
nameserver 127.0.0.53

2番目の行についてはわかりませんが、これでもこれで問題ないはずです。

それでも、Digpingなどを実行しようとすると、接続は常にタイムアウトします。

> Dig askubuntu.com

; <<>> Dig 9.11.4-3ubuntu5-Ubuntu <<>> askubuntu.com
;; global options: +cmd
;; connection timed out; no servers could be reached

どこで何か間違ったことをしたので、それらの機能を壊しましたか?

1
flomei

systemd-resolvedに127.0.0.53が表示されているように、/etc/resolv.confはまだ実行中です。

dnsmasqが実行されている場合、127.0.0.1と表示されます。

両方を一緒に実行すると、お互いのつま先を踏む傾向があります。

dnsmsaqを実行し、systemd-resolvedのDNS機能を無効にするには、/etc/systemd/resolved.confを編集する必要があります...

変化する:

#DNSStubListener=yes

に:

DNSStubListener=no

再起動して、/etc/resolv.confを再確認すると、127.0.0.1が表示されます。

ポストノート:do [〜#〜] not [〜#〜]/etc/resolv.confを手動で編集します。

2
heynnema