- CentOS 7 网络配置还有一个有趣的现象,我们都习惯使用
ifconfig
命令查看自己的网络信息和IP地址,但是在 CentOS 7 是无法执行的,如下图所示: - 原因是 CentOS 7 使用
ip
命令代替了ifconfig
命令,ifconfig
是 net-tools 中已被废弃使用的一个命令,多年前就已经没有维护了,新的 iproute2 提供了比 net-tools 更强大的命令,CentOS 7 预装的是 iproute2 ,ip
命令属于iproute2,功能自然也比ifconfig
会更强大,如果习惯了用ifconfig
命令的可以手动安装一下net-tools:yum install -y net-tools
ip
命令常用的命令:
ip link show
显示网络接口状态信息ip address
查看网络接口IP地址相关,发现网络接口enp0s3没有分配IP地址
CentOS 7 静态IP配置
dhcp 网络模式会在联网之后自动获取到IP地址,dhcp 获取的ip地址可能会因为网络重连发生变化,实际网络中,我们希望自己的IP地址是唯一的,以便于通过IP进行通讯访问,采用配置静态IP方式是最好的一种方式,静态IP配置方式:
- 在
/etc/sysconfig/network-scripts
路径下找到ifcfg-*
,* 代表具体网卡,本文修改的网卡是 ifcfg-eth0,你的有可能是 ifcfg-enp0s3 ,除 ONBOOT 和 BOOTPROTO 修改外,其他几项为新增。修改后内容参见下文。
输入vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
打开编辑,修改以下内容
1 [root@hadoop1 ~]# cat /etc/sysconfig/network-scripts/ifcfg-enp0s3 2 TYPE="Ethernet" 3 PROXY_METHOD="none" 4 BROWSER_ONLY="no" 5 BOOTPROTO="dhcp" 6 DEFROUTE="yes" 7 IPV4_FAILURE_FATAL="no" 8 IPV6INIT="yes" 9 IPV6_AUTOCONF="yes" 10 IPV6_DEFROUTE="yes" 11 IPV6_FAILURE_FATAL="no" 12 IPV6_ADDR_GEN_MODE="stable-privacy" 13 NAME="enp0s3" 14 UUID="5897c0f4-f129-454d-91a4-f0142c66206d" 15 DEVICE="enp0s3" 16 ONBOOT="yes"
以下内容修改BOOTPROTO和ONBOOT两项,在后面新增后面的内容
1 #static assignment 2 BOOTPROTO=static #默认dhcp,改为static,表示启用静态IP地址 3 ONBOOT="yes" #开启自动启用网络连接 4 IPADDR=192.168.1.11 #本机静态IP地址,如果使用虚拟机桥接模式,静态IP一定要和主机在同一个网段,且IP唯一未被使用 5 NETMASK=255.255.255.0 #子网掩码,需和公网主机配置的网关一致 6 GATEWAY=192.168.1.1 #默认网关,需和公网主机配置的网关一致 7 DNS1=8.8.8.8 #第一个dns服务器,BOOTPROTO=static 的时候不会自动生成DNS解析,最好在这里也一并配置上
:wq
保存退出之后,service network restart
或 /etc/init.d/network restart
重启网络之后就生效了
查看一下配置后的样子
依次把3台机器都设置为静态IP