VPNアドレスに一時的にDNSを使用することはできません。

VPNアドレスに一時的にDNSを使用することはできません。

端末でVPNを使用するか、ネットワーク管理者を介してLubuntu 15.10の会社ネットワークに接続しています。時にはイントラネットホストにうまくアクセスできますが、突然消えることがあります。それから彼らは戻ってきました。設定を変更せず、接続が安定しています。これはとても残念です。

通常はIPで連絡できますが、ホスト名では連絡できません。これはわずか5分間隔で行われた発掘結果です。 1つは失敗し、もう1つは失敗しました。

; <<>> DiG 9.9.5-11ubuntu1-Ubuntu <<>> some.intranet.host
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 7423
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1280
;; QUESTION SECTION:
;some.intranet.host.        IN  A

;; ANSWER SECTION:
some.intranet.host. 3500    IN  A   10.0.20.107

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu Dec 10 18:46:17 CET 2015
;; MSG SIZE  rcvd: 65

; <<>> DiG 9.9.5-11ubuntu1-Ubuntu <<>> some.intranet.host
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 17766
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1280
;; QUESTION SECTION:
;some.intranet.host.        IN  A

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu Dec 10 19:06:35 CET 2015
;; MSG SIZE  rcvd: 49

私はネットワーク設定がうまくいかず、デバッグするのに苦労しました。 VPNに接続したときの私のresolv.confの内容:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.0.1
search intranet.host intranet fritz.box

ifconfig tun0
tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet addr:172.16.0.138  P-t-P:172.16.0.138  Mask:255.255.255.0
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1412  Metric:1
          RX packets:46575 errors:0 dropped:0 overruns:0 frame:0
          TX packets:36452 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500 
          RX bytes:45875777 (45.8 MB)  TX bytes:4059895 (4.0 MB)

修正する:

dnsmasqを無効にしたにもかかわらず、再起動後に実行中のプロセスを見ることができ、resolv.confはまだ127.0.0.1をネームサーバーとして保持します。プロセスを終了した後、URLを解析することはできません。 resolv.confからネームサーバーを手動で取り出す必要がありますか?

$ grep dnsmasq /etc/NetworkManager/NetworkManager.conf
#dns=dnsmasq

$ ps aux|grep dnsmas
dnsmasq   1730  0.0  0.0  49580  3052 ?        S    16:26   0:00 /usr/sbin/dnsmasq -x /var/run/dnsmasq/dnsmasq.pid -u dnsmasq -r /var/run/dnsmasq/resolv.conf -7 /etc/dnsmasq.d,.dpkg-dist,.dpkg-old,.dpkg-new --local-service

ベストアンサー1

Ubuntuはdnsmasq工場出荷時にデフォルトで有効になっています。 Dnsmasqは1)DNSキャッシュプロキシ(パフォーマンス用)、2)DHCPサーバーです。一般的なホームルーターと通信する一般的なホームユーザーが、ルーターが提供するこれら2つのサービスを複製するためにdnsmasqが必要な理由が見つかりません。

最初のステップはdnsmasqを無効にすることです。

$ grep dnsmasq /etc/NetworkManager/NetworkManager.conf 
#dns=dnsmasq
$ sudo service network-manager restart
$ sudo killall dnsmasq

まず、ネットワーク接続がそのままであることを確認することをお勧めします。 DNSのパフォーマンスが影響を受ける場合は驚くでしょう。

Fires up vpnc; NetworkManagerの助けを借りずに手動で実行した。デフォルトルートをVPNにリダイレクトする必要があるかもしれません。次のコマンドを使用して、VPNトンネル疑似デバイスを見つけることができますifconfig。私の名前は次のとおりです。tun0

$ sudo route del default ; sudo route add default tun0

端末をブロックするデフォルトのルーターがない場合に備えて、1行にしておくことをお勧めします(そうではありませんが…)。

上記の最初のコードブロックは一度だけ完了します。デフォルトルートを変更する必要がある場合は、VPNを使用するたびにそれを変更する必要があります。これをすべて行う単純なスクリプトがありますが、NetworkManagerをよりよく理解しておらず、あまりにもローカルであると思うので、ここに投稿しません。

おすすめ記事