Kubernetes出現Pod中沒法解析DNS的問題(Ubuntu 16.04),通過摸索,獲得瞭解決(參見:Kubernetes中的Pod沒法訪問外網-Ubuntu16.04 LTS )。但在升級到Ubuntu 18.04後,該問題再次出現,並且老辦法也不靈了!html
咋整?ubuntu
下面的幾個思路,都試了一遍:spa
/etc/resolv.conf,這是通常修改的文件,但此次改了之後,重啓系統後又被改回去了。系統提示該文件是由networkmanager建立的。
/etc/systemd/resolved.conf
,是resolv服務的配置,改了之後重啓服務,好像沒啥變化。.net
/run/resolveconf/resolv.conf,有人說是/etc/resolv.conf的鏈接指向文件,但個人系統沒有。
code
/etc/resolvconf/resolv.conf.d/head,這個目錄下有幾個聽說是resolv的配置文件,聽說用於更新/etc/resolv.conf文件,
但與/etc/resolv.conf裏的數據不一樣。下面採用辦法編輯了這個文件,終於搞定了。
server
Networkmanager
htm
/etc/networkmanager/interfaces,之前版本都是該這裏頭的,沒有效果。
blog
dnsmasq,雖然系統安裝了,可是配置都是空的,應該沒有做用。
dns
netplan
,這是Ubuntu 18.04的主流配置,但是裏面的/etc/netplan目錄是空的(不知道/etc/resolv.conf裏的內容從哪裏來的)。get
不知道哪個是真正起做用的了,實在不行的話,就只能蠻幹了。
Disable systemd-resolved:
https://www.feiqy.com/ubuntu-dns/
systemctl disable systemd-resolved
沒有效果,重啓系統也沒有效果。
須要注意的是:
修改/etc/resolv.conf的指向:
#修改/etc/resolv.conf爲軟連接,從resolvconf配置文件來更新。 sudo mv /etc/resolv.conf /etc/resolv.conf.orig sudo ln -s /run/resolvconf/resolv.conf /etc/resolv.conf #修改/etc/resolvconf/resolv.conf.d/head或者base sudo nano /etc/resolvconf/resolv.conf.d/head #而後,應用一下。 sudo resolvconf -u #再去看一下,應該已經變了。 cat /etc/resolv.conf
這個是能夠的!雖然笨了點。