windows下,用vmware装了个centos7,重启之后,其ip地址就变了,搞到外部无法访问。要知道,宿主机本身访问虚拟机是没有问题的,但外部要访问的话,我是通过NAT模式,将centos的ip和宿主机挂钩,做转发实现的。centos的ip没变一次,这个转发设置就要更改一次,那太麻烦了。因此需要将这个centos的ip设置一个固定的IP。

步骤如下:

1、首先查看当前IP

ifconfig

可能有多个地址,有一些是docker的,还有一些不知道是干嘛的。我们主要关心以太网卡(虚拟的)的地址:

ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.144.129  netmask 255.255.255.0  broadcast 192.168.144.255
        ether 00:0c:29:63:e6:8a  txqueuelen 1000  (Ethernet)
        RX packets 1098908  bytes 764801829 (729.3 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 276754  bytes 130832383 (124.7 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

2、修改以太网网卡配置文件

1)备份ifcfg-ens33

进入/etc/sysconfig/network-scripts/
cp ifcfg-ens33 ./ifcfg-e3.back

2)修改ifcfg-ens33

vi ifcfg-ens33

修改后内容:

TYPE="Ethernet"
  BOOTPROTO="static"  #DHCP改为static,动态获取ip地址协议改为静态
  DEFROUTE="yes"
  NAME="ens33"
  UUID="a7db1fa9-1519-406d-9dc6-895e97a991e4"
  DEVICE="ens33"
  ONBOOT="yes"
  IPADDR="192.168.253.151"  #填写你想固定的ip地址
  NETMASK="255.255.255.0"   #填写子网掩码
  GATEWAY="192.168.253.2"   #填写网关

有关网关地址,可以通过以下命令查看:

[root@localhost network-scripts]# ip r
default via 192.168.253.2 dev ens33 proto dhcp metric 100

3、重启以太网网卡

ifdown ens33  #禁用网卡ens33
ifup ens33    #启用网卡ens33

如果激活网卡不生效,可以试着重启一下

systemctl restart NetworkManage  ----重启系统服务
systemctl start NetworkMange ---- 启动
systemctl stop NetworkMange ---- 关闭

参考文章:
Linux如何固定ip地址,及ifcfg-ens33文件参数