VirtualBox 下 CentOS7 静态 IP 的配置 → 多次踩坑总结,蚌埠住了!
开心一刻
一个消化不良的病人向医生抱怨:我近来很不正常,吃什么拉什么,吃黄瓜拉黄瓜,吃西瓜拉西瓜,怎样才能恢复正常呢?
医生沉默片刻:那你只能吃屎了
环境准备
VirtualBox 6.1
网络连接方式:桥接模式(Bridged Adapter)
CentOS 7
精简版:CentOS-7-x86_64-Minimal-2009.iso
下载地址:https://mirrors.aliyun.com/centos/,各个版本都有
安装过程可参考:virtualBox安装centos,并搭建tomcat
静态 IP 配置
静态 IP 也称固定 IP,为什么要配置固定 IP?
假设你和别人对接,别人的 IP 一直变,你烦不烦?
关闭防火墙
从安全角度来讲,防火墙是不能关闭的,而是放行特定的端口
但我们自己玩的话,图省事,直接关闭防火墙
关闭 NetworkManager
我们自己配置固定 IP,不需要 NetworkManager 帮忙管理网络,关闭它
修改网络接口配置文件
文件在 /etc/sysconfig/network-scripts/ 目录下
CentOS6 的文件名是 ifcfg-eth* ,例如: ifcfg-eth0 、 ifcfg-eth1
CentOS7 的文件名是 ifcfg-en* ,例如: ifcfg-enp0s3 、 ifcfg-ens33
而我的文件名是 ifcfg-enp0s3
默认情况下该文件内容如下
结合宿主机的网络信息,修改该文件,内容如下
BOOTPROTO 固定改成 static
ONBOOT 固定改成 yes
DNS1 固定成 114.114.114.114 或 8.8.8.8 ,域名服务器可以配置多个: DNS、DNS1
IPADDR 配置成你想改成的固定IP,需要参考宿主机的IP,而不是可以改成任意IP,比如宿主机 IP 是 192.168.1.114 ,那这里就可以配置成 192.168.1.* (不能使用已被占用的IP、预留IP)
NETMASK 和 GATEWAY 都和宿主机保持一致
ifcfg-enp0s3 修改完成后,保存退出
重启网络服务: systemctl restart network
没报错的话,静态 IP 就配置好了
可以 ping 下百度,看看是否能 ping 通
坑点
如果你按上面的配下来,没出现问题,那只能说你的运气是真的好
楼主前前后后配置了好多次,静态IP配置总要出点问题
MAC地址配错
这个只出现过一次,在 ifcfg-enp0s3 中配置 HWADDR 的时候,手动输入出现了失误
这个值从这里可以拿到
两两以横线(-)隔开,类似: HWADDR=08-00-27-7C-F1-FB
经过多次尝试, ifcfg-enp0s3 是不需要显示配置 HWADDR 的;配了可能配错,那就别配了
VirtualBox 网络 界面名称 选错
这是楼主反复遇到的问题,尤其是笔记本(无线网卡、有线网卡)
这里选择宿主机正在使用的网卡(连入网络的网卡)
无线和有线切换,这里也需要做相应的调整
桥接模式,就是通过宿主机网卡来搭桥,连入网络,你配置一个未接入网络的网卡,咋滴,你要上奈何桥呀?
NetworkManager 与 静态 IP 冲突
关闭 NetworkManager 即可,楼主一般都会关掉它,所以没遇到过这个问题
防火墙防护
关闭防火墙即可,包括 CentOS 和宿主机上的 Windows
宿主机未关闭防火墙,可能出现宿主机可以 ping 通虚拟机,虚拟机 ping 不通宿主机的情况
总结
1、配置静态 IP,主要分 4 步
关闭防火墙、关闭 NetworkManager 、修改网络接口配置文件、重启网络
2、网络接口配置文件中不需要配置 MAC
3、 VirtualBox 上虚拟机网卡一定要选宿主机正在使用、正在使用、正在使用的网卡