Hyper-V 中Linux虛擬機器的網路設定方式
1. 網路介面卡為internal型別的虛擬交換機。
在這裡,網路介面卡就是安裝Hyper-V的時候預設安裝的<預設交換機>,其配置如下:
可以看到,預設交換機的連線型別是內部網路,虛擬機器通過NAT方式訪問internet。
為了在虛擬機器中能訪問internet,要在win10的<網路連線>中,將預設交換機和wlan橋接起來。
選擇WLAN和vEthernet(預設交換機),右擊滑鼠,選擇橋接,如上圖,結果如下面的兩個圖
啟動虛擬機器後,看到IP,arp相關資訊如下:
> ipconfig 乙太網介面卡 vEthernet (external): 連線特定的 DNS 字尾 . . . . . . . : Home1 IPv4 地址 . . . . . . . . . . . . : 192.168.1.187 子網掩碼 . . . . . . . . . . . . : 255.255.255.0 預設閘道器. . . . . . . . . . . . . : 192.168.1.1 乙太網介面卡 vEthernet (預設交換機): IPv4 地址 . . . . . . . . . . . . : 172.30.227.177 子網掩碼 . . . . . . . . . . . . : 255.255.255.240 預設閘道器. . . . . . . . . . . . . : > arp -a 介面: 172.30.227.177 --- 0xa Internet 地址 實體地址 型別 172.30.227.182 00-15-5d-38-01-19 靜態
可以看到虛擬機器的ip地址為172.30.277.182, Hyper-V的預設交換機的地址為172.30.227.177,對外地址(由無線路由器獲取的ip)為192.168.1.187.
從虛擬機器裡看到自身的ip和路由資訊和上面Win10 host中看到的也是吻合的。
[email protected]:~$ ifconfig eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 172.30.227.182 netmask 255.255.255.240 broadcast 172.30.227.191[email protected]:~$ ip route default via 172.30.227.177 dev eth0 proto dhcp metric 100 172.30.227.176/28 dev eth0 proto kernel scope link src 172.30.227.182 metric 100
> tracert 172.30.227.182 通過最多 30 個躍點跟蹤 到 abc-VM.mshome.net [172.30.227.182] 的路由: 1 <1 毫秒 <1 毫秒 <1 毫秒 abc-VM.mshome.net [172.30.227.182] 跟蹤完成。
win10 host對虛擬機器的訪問可以通過ssh,ssh可以直接通過ip,或者完整的域名。
> ssh [email protected]
[email protected]'s password:
Welcome to Ubuntu 18.04 LTS (GNU/Linux 4.15.0-22-generic x86_64)
> ssh [email protected]
[email protected]'s password:
Welcome to Ubuntu 18.04 LTS (GNU/Linux 4.15.0-22-generic x86_64)
這兩種方式都可以,但是僅僅使用主機名則不行,例如:> ssh [email protected]
ssh: Could not resolve hostname abc-vm: \262\273\326\252\265\300\325\342\321\371\265\304\326\367\273\372\241\243
無法解析主機名,不知道是不是因為不在同一個網段的緣故。2. 網路介面卡為external型別的虛擬交換機。
方法類似,建立的虛擬交換機連線方式為外部網路;虛擬機器上網不是NAT的方式,而是和host在同一網段,但是由於Hyper-V 固有的一個問題,使用這種方式後,host網速變得很慢,檢視很多網上的解決方案,都是針對通過有線乙太網上網的方式進行解決的,針對wifi上網沒有看到好的辦法。
相關的網頁連結:
https://social.technet.microsoft.com/Forums/windowsserver/en-US/29c669db-30fe-4196-9b95-a9d5e48ac318/slow-network-performance-after-adding-hyperv-role-to-windows-server-2008-r2?forum=winserverhyperv
https://www.cnblogs.com/GSonOVB/archive/2009/11/12/1601435.html
另外,關於Hyper-V虛擬機器上網,可以參考:
https://social.microsoft.com/Forums/de-DE/8bc77ba4-496d-494b-a1f6-92ffeac5d444/22914203093575331508357602641219978368163489230340hyperv20351299?forum=windowsserversystemzhchs
https://www.cnblogs.com/phpandmysql/p/7811852.html