Netplan
是 Ubuntu 17.10 中引入的一種新的命令行網絡配置實用程序,用於在 Ubuntu 系統中輕松管理和配置網絡設置。 它允許您使用 YAML
格式的描述文件來抽像化定義網絡接口的相關信息。
Netplan
可以使用 NetworkManager
或 Systemd-networkd
的網絡守護程序來做為內核的接口。Netplan
的默認描述文件在 /etc/netplan/*.yaml
里,Netplan
描述文件采用了 YAML
語法。
在 Ubuntu 18.04 中如果再通過原來的 ifupdown
工具包繼續在 /etc/network/interfaces
文件里配置管理網絡接口是無效的。
所以本文主要利用Netplan配置靜態ip並實現上網
1.route -n 查看網關地址(如果route -n不能用,按照提示按照命令包,可以使用動態ip,保證ubuntu18.04 虛擬機可以上網,然后安裝必要的軟件)
2.使用Netplan配置靜態ip
vim /etc/netplan/01-network-manager-all.yaml
ens33 #是虛擬機的網卡名稱
gateway4:192.168.90.2 # 虛擬機的網關,這里配置為route -n 查看到的網關
dhcp4 :no #no代表不是用dhcp動態獲取ip,yes代表使用dhcp動態獲取ip
nameservers: #是dns地址
addresses: [8.8.8.8, 8.8.4.4]
search:[localdomain] 虛擬機所在的domain
設置完成后netplan apply保存配置,會立即生效,這時候虛擬機就可以上網了
3.解決resolv.conf配置文件被覆蓋,首先安裝resolvconf 軟件
執行 sudo resolvconf -u 生成base head tail 三個文件,head提示不可編輯,所以修改base和tail兩個文件
vim /etc/resolvconf/resolv.conf.d/base #如果沒有這個文件的手動創建
vim /etc/resolvconf/resolv.conf.d/base #如果沒有這個文件的手動創建
然后reboot重啟虛擬機發現/etc/resolv.conf多了幾行配置
參考:https://blog.csdn.net/weixin_42776979/article/details/81450213
https://unix.stackexchange.com/questions/174349/what-overwrites-etc-resolv-conf-on-every-boot
https://www.hi-linux.com/posts/49513.html#%E4%BD%BF%E7%94%A8-networkd-%E5%90%8C%E6%97%B6%E9%85%8D%E7%BD%AE%E5%A4%9A%E5%BC%A0%E7%BD%91%E5%8D%A1