linux虛擬機配置固定ip,可鏈接外網

VMnet8和NATios

若是你的虛擬機是以NAT方式連入互聯網的話,那麼虛擬機的IP地址非配,網關以及互聯網訪問權限均由VMWare提供的叫作VMnet8虛擬網卡所提供。因此一切和設置靜態IP有關的設置均可以從這裏找到。通VMnet8虛擬網卡,主機能夠訪問虛擬機的IP,虛擬機能夠連入主機的互聯網鏈接連入外網。shell

確認VMnet8虛擬網卡已啓用ubuntu

在默認狀況下,VMWare Workstation已經啓用VMnet8虛擬網卡,Windows 7下,經過進入 控制面板>網絡和Internet>網絡和共享中心>更改適配器設置 能夠查看該虛擬網卡的狀態。如圖1-1所示。vim

圖1-1網絡

獲得可用IP範圍、網關和子網掩碼oop

在VMWare主界面,點擊Edit>Virtual Network Editor菜單進入虛擬網卡參數設置界面(圖1-2)。選擇VMnet8條目,點擊NAT Settings按鈕後能夠看到咱們的VMWare Workstation爲NAT鏈接的虛擬機設定的默認網關,此處爲192.168.91.2,以及子網掩碼,此處爲255.255.255.0, 如圖1-3所示。圖1-2測試

圖1-3spa

點擊DHCP Settings按鈕,能夠看到VMnet8爲虛擬機分配的可用的子網IP範圍,如圖1-4所示。rest

圖1-4code

此處,咱們的子網IP可用範圍爲192.168.91.128~192.168.91.254

OK,至此,全部咱們須要的信息都已經獲取到,這裏彙總一下,

- 子網IP可用範圍:192.168.91.128~192.168.91.254

- 子網掩碼:255.255.255.0

- 網關: 192.168.91.2

下面開始進入Ubuntu虛擬機設置靜態IP。

 

在Ubuntu 12.04.1中設置靜態IP

1. 啓動虛擬機Ubuntu系統,打開終端,利用以下命令打開並編輯網絡接口配置文件:

sudo vi /etc/network/interfaces

2. 編輯文件以下:

複製代碼

auto lo
iface lo inet loopback

# Assgin static IP by eric on 26-SEP-2012iface eth0 inet static
address 192.168.91.200 #change to your static IP
netmask 255.255.255.0  #change to your netmask
gateway 192.168.91.2    #change to your getway
#We must specify dns-nameserver here
#in order to get internet access from host
dns-nameservers 192.168.91.2auto eth0

複製代碼

說明

address是你要分配給你虛擬機的靜態IP地址,能夠從剛纔咱們找到的可用的子網IP範圍中隨便選擇一個放在此處。

netmask是子網掩碼

gateway是網關

注意:在相對較早的版本中,你須要設置/etc下的resolv.conf文件,並加入nameserver,這樣才能夠鏈接互聯網。但在Ubuntu 12.04以後,已經不推薦這種方式了,由於不管你想該配置文件中設置什麼值,從新啓動以後都會被還原爲初始狀態。推薦的作法是直接在interfaces配置文件中加入dns-nameserver <網關IP>這一行。

3. 重啓ubuntu的網卡

sudo /etc/init.d/networking restart

4. ping測試互聯網連通性

ping www.baidu.com


配置中遇到的問題:按照上述配置好了,也沒報錯,但發現配置的ip和ifconfig的不同。問題出在哪裏呢?

上述手動配置的靜態ip,指的是eth0的網卡,但我ifconfig,沒有發現eth0網卡,而是

有個奇怪的eno16777736編號的網卡。先把他修改爲eth0

1. 修改

rot@rot-virtual-machine:~$ sudo vim /etc/default/grub

在」GRUB_CMDLINE_LINUX」中添加參數net.ifnames=0 biosdevname=0,以下圖所示

2. 更新

rot@rot-virtual-machine:~$ sudo update-grub

若提示沒有此命令,請先輸入安裝命令
# apt-get install grub2-common

3. 輸入以下命令,編輯對應文件

rot@rot-virtual-machine:~$ sudo vi /etc/network/interfaces

將「eno16777736」所有改成「eth0」,以下圖所示

4. 重啓系統,再一次查看網卡名稱已恢復正常,以下圖

在處理的時候,問題又來了,重啓系統之後,ifconfig沒有eth0,連原來的哪一個eno16777736也沒了,但ifconfig -a就會有eth0,原來是沒啓動eth0網卡。

rot@rot-virtual-machine:~$  ifconfig eth0 up

ifconfig能顯示網卡了,但eth0網卡的ip是空,用命令獲取一下ip地址

rot@rot-virtual-machine:~$ sudo dhclient eth0

ok了、、

相關文章
相關標籤/搜索