VMware 安装 Centos 7 虚拟机配置网络

在 Windows 机器上如果想使用 Linux 环境,最方便的方式莫过于使用虚拟机,最常用的软件各位肯定也不陌生,大名鼎鼎的 VMware 。

不过这玩意有点稍稍不是那么智能,每次安装 Linux 以后,网络都是不通的,没有一次是可以直接装完就能用的。

我单纯记录一下需要修改的内容:

首先是先看下当前的网卡配置,因为我安装的是 Centos mini 版的系统,支持的命令有限,只能使用 ip addr 的命令:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:fd:6b:a2 brd ff:ff:ff:ff:ff:ff
    inet 192.168.128.100/24 brd 192.168.128.255 scope global noprefixroute ens32
       valid_lft forever preferred_lft forever
    inet6 fe80::e1c0:881a:5ae3:f915/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

可以看到两个网卡配置,一个是 lo 的本地回环网络,这个我们无需关心,还有一个 ens32 的网络配置,我们需要改的是这个(我这里是已经配置好的网卡配置,新装的机器没有配置过网络应该显示会有不一样)。

接下来修改 Linux 的网卡配置:

因为上面我们看到的是 ens32 网卡,所以 ens32 的网卡的配置地址为 /etc/sysconfig/network-scripts/ifcfg-ens32 ,有的系统可能不是叫 ens32 ,可能是其他名称。

打开看一下 ens32 的初始配置,如下:

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens32"
UUID="6e1b5eaf-21ab-486b-8378-3f0fd92bf969"
DEVICE="ens32"
ONBOOT="yes"

这里有两个配置是需要注意的 BOOTPROTO 和 ONBOOT 。

BOOTPROTO 是网络类型,可能的选项为 static , dhcp 或 bootp 分别对应静态指定的 ip 地址,通过 dhcp 协议获得的 ip 地址,通过 bootp 协议获得的 ip 地址。

这里修改成 static ,我当然希望使用的是静态 IP ,不然每次开机使用的 ssh 链接工具都要换 IP ,太麻烦了。

ONBOOT 需要改成 yes ,这个意思是是否系统启动是自动激活网卡,一般设置为 yes ,否则系统启动后需要手动输入命令启动网卡。

接下来,需要添加下面的信息:

IPADDR=192.168.128.100
GATEWAY=192.168.128.2
NETMASK=255.255.255.0

先说一下, NETMASK 是子网掩码,这个默认填 255.255.255.0 就可以了。

GATEWAY 是网关地址,这个需要在 VMware 的 NAT 网络配置中找,不是可以随便填,否则网关不同网络是不会通的。

IPADDR 这个是 IPV4 的地址,也就是我们最终使用的 IP 地址,但是不能随便写,前三段需要和网关维持一致,最后一个随便写一个不存在的即可。

接下来重启一下网络 systemctl restart network

然后尝试 ping 一下百度:

[root@localhost ~]# ping www.baidu.com
ping: www.baidu.com: Name or service not known

这个报错看起来是域名没有解析,我换个查号台的 IP 来 PING 一下试试看:

[root@localhost ~]# ping 114.114.114.114
PING 114.114.114.114 (114.114.114.114) 56(84) bytes of data.
64 bytes from 114.114.114.114: icmp_seq=1 ttl=128 time=55.3 ms
64 bytes from 114.114.114.114: icmp_seq=2 ttl=128 time=80.6 ms
64 bytes from 114.114.114.114: icmp_seq=3 ttl=128 time=70.2 ms

看来网络现在已经通了,域名解析十有八九是 DNS 的问题,修改下 DNS ,vim /etc/resolv.conf

# Generated by NetworkManager
nameserver 114.114.114.114
nameserver 202.96.134.133

第一个是查号台的 DNS ,第二个 202.96.134.133 是电信的 DNS ,因为我的网络是使用电信的网络,所以我这里优先选用了电信的 DNS 。

然后再重启一下网络 systemctl restart network ,再次尝试 PING 百度的域名,我这里已经 PING 通了,至此, Centos 7 的网络配置就结束了,之前每次装虚机,都是在网上到处搜,瞎改配置,最后不知道怎么网络就通了,这次特地整理一下,留着以后备查。

上一篇:kingbaseES R3 集群一键修改集群用户密码案例


下一篇:DOCKER - 容器抓包