Hyper-V虚拟机固定IP地址#
最近在用虚拟机做实验,一会在家一会在公司的,网络环境老是变化,感觉挺烦的,写个文档记录下
针对网上的一些教程说明:
网上说的配置虚拟机ip地址为固定的ip地址的时候全部都是说: 打开控制面板,进入网络与共享中心,更改适配器的设置。找到刚才创建的虚拟机交换机。右键属性,修改IP地址。IP地址随你喜好,我这里用的IP:192.168.137.1,子网:255.255.255.0
说这里我用的IP地址是。。。。。是个头啊???小白喜欢设置成192.168.11.*???然后呢,按照你的教程去发现虽然xshell能连接上虚拟机了,但是却死活都上不了网!!!!嗝屁了,死活不成功,
说明一下,如果你即想根据你的心情来固定虚拟机的IP地址,又想让他能够上互联网,虚拟机内网ip必须设置成192.168.137.0网段的,想换别的网段就更改注册表去!!!!
至于为什么是必须是137.0网段的,这是因为这是微软默认的一条NAT转发规则,当然你也可以改变转发规则!
需求#
需求一:#
不管物理机的网络如何变化,必须保证虚拟机的IP地址不变
需求二:#
物理机能访问虚拟机,虚拟机之间可以互相通信
需求三:#
无论物理机的网络环境怎么变化,虚拟机可以连接到外网
需求四:#
无论物理机的网络环境怎么变化,虚拟机可以连接到外网并且保证虚拟机的IP地址不变
先来重点实现需求一:#
1.按照图片步骤操作
创建虚拟交换机
这里有三个种类的虚拟机
具体每个虚拟交换机作用是啥?#
- 外部: 虚拟交换机部署完成后,虚拟机和宿主机连接到同一个虚拟交换机。虚拟机与宿主机获取同一网段的IP地址,与宿主机所在的网络中的其他计算机通信,每台虚拟机等同于宿主机所在网络的宿主机
选择此类虚拟交换机后虚拟机的ip地址和物理机的ip地址是同一个网段,变了网络环境后虚拟机的IP自然就发生了变化,起不到固定ip的作用
内部: 内部网络相当于给宿主机虚拟一张网卡,用于于虚拟机通信,并且提供DHCP服务和NAT代理服务。虚拟机可以通过宿主机上网但是不能与宿主机所在的网络通信。
专用: 专用网络相当于虚拟一个专供虚拟机之间连接的虚拟交换机,所有的虚拟机连接到同一个虚拟交换机上,所有的虚拟机之间可以通信,但是不能访问宿主机以及宿主机所在的网络。
此类虚拟机只能在虚拟机间通信使用
2.接着固定IP地址:找到刚刚创建的虚拟交换机的名称网卡,将网卡IP地址填写为手动获取,IP地址根据自己喜好来就行,但是这里根据自己的喜好来的话是上不互联网的,上面有介绍到。如图是我的
3.固定虚拟机的IP地址的时候到了,过于简单,随便说说就行了
登录虚拟机修改配置文件
vi /etc/sysconfig/network-scripts/ifcfg-eth0 #网卡名称根据自己的情况而定
修改下面部分
BOOTPROTO=static # 将dhcp设置为static
DEVICE=eth0 #名称
ONBOOT=yes # 开机启动
IPADDR=10.10.10.200 # 这个需要和你前面设置的IP网段一样
GATEWAY=10.10.10.1 # 网关
DNS1=10.10.10.10 # 第一个DNS
NETMASK=255.255.255.0 #子网掩码
重启网卡:
systemctl restart network
到这里需求一实现了
实现需求二:#
这个比较简单,将所有虚拟机连接到同一个交换机上就行了
实现需求三:#
需求三也比较简单,如果你的物理机能上外网的话,新建一个外网交换机或者使用默认的交换机便可以实现上外网的功能了,如果想上外网和ip不变,继续需求一的操作就行了。
特别注意的地方就是:如果你不愿意折腾注册表的话,IP地址不能随意,必须是137.0网段的!
实现上外网和ip不变(需求四)#
这里在需求一的基础上补充一点,只需要将物理机的网卡共享给你新建的内部交换机就能实现了,但是内网IP地址只能是137.0网段的#
hyper-v会自动生成一个default switch,根据微软的描述,default switch是为了无论物理机的网络环境怎么变化,虚拟机可以连接到外网。 一句话,物理机可以上网,虚拟机就可以