一、首先查看你你的虛擬機的ip是否獲取到
ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:26:3b:e2 brd ff:ff:ff:ff:ff:ff
3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
link/ether 02:42:28:71:f8:c1 brd ff:ff:ff:ff:ff:ff
inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
valid_lft forever preferred_lft forever
注意看ens33這個下面沒有 inet 地址。所以,這樣就是有問題的。
二、臨時解決方案:
sudo dhclient ens33
這個重啓後還是會出現獲取不到的問題。其實問題的本質,就是你沒有給ubuntu設置靜態ip
三、解決方案:
這裏需要結合虛擬機的地址設置。由於我這裏的系統是ubuntu18.0.4,設置跟網上的不太一樣,
cat /etc/network/interfaces
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
auto ens33
iface ens33 inet dhcp #也可以換成static,dhcp代表啓用dhcp服務
address 192.168.79.128
netmask 255.255.255.0
gateway 192.168.79.2
那個auto ens33就是虛擬的網卡。這裏的地址需要跟虛擬機的nat設置對應上,
address必須在 這裏起始和結束之內(包含起始和結束)
netmask 和gateway 其實就是掩碼和網關,這裏對應上就可以了。