前言
最近在玩Hyper-v,我發現使用NAT做內網時,虛擬機每次重啟都會換ip,非常不方便。
於是我就想研究下如何保留固定的ip地址。
虛擬交換機
Hyper-v的ip分配設備-虛擬交換機
Hyper-v的ip分配是需要虛擬設備的,我們打開Hyper-v的頁面:
建立一個名為koo的虛擬交換機。
可選擇內部網絡和外部網絡,其中內部網絡代表NAT,外部網絡代表橋接。
建立之后,可在網絡設備中查到新建的koo。
網絡配置器的設置
ip地址和網關的設置
使用win+R, 輸入ncpa.cpl, 打開網絡設備界面。
可先設置其ip和網關。
虛擬機的ip設置
從Hyper-v打開虛擬機(vm1),設置ip地址、掩碼、網關、DNS。
[root@vm1 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

然后重啟網絡,觀察是否分配到ip。
[root@vm1 ~]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.18.4.100 netmask 255.255.255.0 broadcast 172.18.4.255
inet6 fd9b:f0ec:a68a:5:215:5dff:fe4a:10f prefixlen 64 scopeid 0x0<global>
inet6 fe80::215:5dff:fe4a:10f prefixlen 64 scopeid 0x20<link>
ether 00:15:5d:4a:01:0f txqueuelen 1000 (Ethernet)
RX packets 97553 bytes 38047589 (36.2 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 121016 bytes 19973580 (19.0 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@vm1 ~]# ping 172.18.4.100
PING 172.18.4.100 (172.18.4.100) 56(84) bytes of data.
64 bytes from 172.18.4.100: icmp_seq=1 ttl=64 time=0.042 ms
成功。
通外網
此時它只能ping通自己,ping不通外網。
所以我們還需要使其跟外部網卡做綁定。
打開網絡控制器界面,打開wifi或以太網網卡,點擊“共享”,選擇koo網卡做為分享網卡。
這時,會彈出這個框。
也就是說,系統默認將192.168.137.1做為koo的ip地址,分配這個網段給虛擬機用。
我們需要改回去。
改回去之后,虛擬機就可以ping通外網了。
后記
Hyper-v有好有壞,好的方面:
- 系統自帶,只需要開啟功能,無需額外安裝。
- 主機開着就能用。
- 磁盤管理很方便。
壞的方面:
- Hyper-v的虛擬交換機使用DHCP時,無法使用固定的ip地址。
- 虛擬機的導出導入不方便。