1. 程式人生 > >ubuntu16.10解決域名無法解析的問題

ubuntu16.10解決域名無法解析的問題

cells 中心 plc 使用 href dhclient pip server 無法

問題描述:

  操作系統是ubuntu16.10,內核版本為,出現網絡域名無法解析的問題。每次重啟後都會出現

解決方案:

  1、關閉dnsmasq進程使用默認的系統DNS解析

  2、查看/var/run/NetworkManager/resolv.conf文件,默認只使用最上面三個dns解析

  3、使用自定義的dns解析,可以采用後文的第二種辦法,使得自動設置的dns生效,不然默認會先用路由器的dns解析


4
#
MeowSprite 發表於 2016-9-29 10:25:08 | 只看該作者
這可能是一個問題。
1. 為什麽dns修改沒用
deepin的控制中心是直接簡單通過dbus來操作networkmanager來保存網絡配置。但是在ip自動獲取的情況下,它手動修改dns之後,卻並沒有將dhcp的dns獲取給關閉。所以你在resolv.conf可以看到還最前面保留著你路由器的dns,而解析是按順序來的,你路由器的dns可以解析之後,自然不會用你配置的dns地址解析。
2. 手動修改resolv.conf
這是非常不贊成的,修改只是臨時的。因為這文件算是臨時文件,每次都會自動產生的,而不是一直固定存在的配置文件。像是ubuntu使用resolvconf命令來管理,而deepin是直接用network manager來管理,你可以在/etc/NetworkManager/system-connections文件夾裏看到網絡的配置文件。每次在連接網絡的時候,他會自動配置這個文件配置,裏面的dns當然也會被配置,然後resolv.conf就會被覆蓋。
大概就是這樣。
解決方案,兩種方法:
1. 修改/etc/dhcp/dhclient.conf文件。裏面有個prepend domain-name-servers這個值,後面改成你要的dns地址。那麽這個dns地址就會永遠再首位。以後可能還要改回來,麻煩,不建議。
2. 使用nmcli命令來管理,首先你使用
  1. nmcli device status
找到你連接的鏈接名,就是connect字段。我這邊名稱叫做“有線連接”。其實就是你的網絡配置文件名。然後使用
  1. nmcli con modify ‘有線連接‘ ipv4.ignore-auto-dns yes

這樣會然nmcli忽視dhcp獲得dns。這個命令配置只有對當前的配置網絡有效。比如你換到另一個網絡,那就無效了。

ubuntu16.10解決域名無法解析的問題