需求:
工作环境与家庭环境网络不同,无论接入什么网络,都需要保证虚拟机IP端口保持稳定不变,以便进行本地调试。
操作系统:CentOS 8
配置方法:
需要配置两个网卡,就可以解决该问题
-
打开虚拟机设置
-
进入网络
-
配置网卡1
网卡1:选择仅主机(Host-Only)网络,界面名称选择VirtualBox Host-Only Network(可能根据虚拟机安装配置不同,该网卡名称可能存在差异,总之是虚拟机的虚拟网卡);
高级中不需要配置,但也给出截图参考:
-
配置网卡2:
首先启用网卡2,连接方式选择:桥接网卡,其余全部默认,参考配置截图如下:
-
虚拟机的DHCP配置
-
虚拟机中查询IP
虚拟机重启后,直接会通过DHCP获取到IP,通过ifconfig查询即可。
IP及网络配置
-
固定IP配置
确定虚拟机内网网卡名称,不同系统或配置,文件名可能不一样,通过ifconfig命令ip地址确定是哪一个。
然后改内网网卡,使这台机器的IP固定,每台机器可能不一样,要修改自己机器的配置:
vim /etc/sysconfig/network-scripts/ifcfg-enp0s3
配置文件改为如下配置:
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
# 这行要将dhcp改为static
BOOTPROTO=static
# 下面这行从yes改为no
DEFROUTE=no
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s3
UUID=066b4926-b40c-4c28-a5b4-2310d2b96613
DEVICE=enp0s3
ONBOOT=yes
# 追加以下几行
IPADDR=192.168.56.200
NETMASK=255.255.255.0
GATEWAY=192.168.56.1
DNS1=114.114.114.114
PREFIX=24
注意改DEFROUTE这行非常重要,别漏掉
-
网卡配置生效
nmcli c reload #重启网卡
nmcli c up enp0s3 #启动网卡3(内网)
此时,如果你设置的固定IP和当前IP不同的话,SSH客户端会断开,如果在虚拟机中则不会。
连接互联网的桥接网卡不需要任何改动。 -
hosts配置
我们将刚刚设置的所有虚拟机可以通过hosts进行配置,这样可以更加灵活和方便地调用,例如我的配置是:
192.168.56.200 demo
192.168.56.201 master
192.168.56.202 slave1
192.168.56.203 slave2
直接将这些追加在vim /etc/hosts文件最后,保存后我们就可以通过 ping hostname 的方式请求到对应的机器了。
比如我的配置,ping 192.168.56.200 就可以写为 ping demo 了。
最后以防万一,再试一下ping www.baidu.com,没问题的话,就可以愉快地做后面的事情了!