1. 程式人生 > >ubuntu 18.04  netplan yaml配置固定IP地址

ubuntu 18.04  netplan yaml配置固定IP地址

2018年4月26日,ubuntu 18.04發行,第一時間下載安裝了SERVER版本。使用VM14版本的虛擬機器,開始使用DHCP獲得IP地址,沒有意外,可以直接上網。然而在更改VM的網路模式為橋接模式時,想把虛擬機器設為固定IP時,出現故障,一直不能獲得地址,也上不了網。經常無數次測試,有以下經驗可供參考。

ubuntu從17.10開始,已放棄在/etc/network/interfaces裡固定IP的配置,即使配置也不會生效,而是改成netplan方式 ,配置寫在/etc/netplan/01-netcfg.yaml或者類似名稱的yaml檔案裡,18.04的server版本安裝好以後,配置檔案是:/etc/netplan/50-cloud-init.yaml,修改配置以後不用重啟,執行 netplan apply 命令可以讓配置直接生效。以前的重啟網路服務命令/etc/init.d/networking restart或者services network restrart也都會提示為無效命令。

$sudo nano /etc/netplan/50-cloud-init.yaml,配置檔案可按如下內容修改。

network:

  version: 2

  renderer: networkd

  ethernets:

    ens33:   #配置的網絡卡名稱

      dhcp4: no    #dhcp4關閉

 dhcp6: no    #dhcp6關閉

      addresses: [192.168.1.55/24]   #設定本機IP及掩碼

      gateway4: 192.168.1.254   #設定閘道器

      nameservers:

          addresses: [114.114.114.114, 8.8.8.8]

  #設定DNS

注意點:

1.以上配置檔案共11行,其中第2,3,6,7四行可以不寫,測試過沒有這四行,網路也能工作正常,第5行的ens33為虛擬網絡卡,可以使用ifconfig -a檢視本機的網絡卡。

2.配置檔案裡在冒號:號出現的後面一定要空一格,不空格則在執行netplan apply時提示出錯。

3.關鍵之關鍵是看清配置總共分為五個層次,逐層向後至少空一格,

第一層-network:

第二層-- ethernets:

第三層--- ens33:

第四層----addresses:  [192.168.1.55/24]

第四層----gateway4:  192.168.1.254

第四層----nameservers:

第五層-----addresses: [114.114.114.114, 8.8.8.8]

DNS配置

DNS還可以使用resolv.conf

sudo vi /etc/resolv.conf #

出現類似錯誤:line8 column 6:cloud not find expected ':'  #提示是冒號:後面沒加空格

出現類似錯誤:netplan found character that cannot start any token,#提示是沒有按五個層次寫配置文件,一定要下一層比上一層多空一格或以上。

如果是ubuntu16.04

一、編輯interfaces 

sudo vi  /etc/network/interface

二、編輯該檔案

auto lo
iface lo inet loopback

auto ens33
iface ens33 inet static
address 192.168.8.100
netmask 255.255.255.0
gateway 192.168.8.2

dns-nameserver 8.8.8.8

三、重啟網路

sudo /etc/init.d/networking restart