> CentOS > CentOS入门 >

CentOS7修改设置静态IP和DNS

最近因为学习Puppet,用虚拟机装了个CentOS,使用的NAT的网络模式,为了防止再次启动系统的时候网络IP发生变化,因此设置静态IP和DNS。 
由于CentOS是最小化安装,没有ifconfig命令,因此可以采用ip命令查看。 
查看IP分配情况:

# ip addr

发现里边只有一个LOOPBACK的127.0.0.1的回环地址,原来CentOS刚安装后默认是不启动网络连接的。  设置IP和DNS主要在下面的配置文件中修改:

# vi /etc/sysconfig/network-scripts/ifcfg-*

由于最小化安装没有vim,所以使用vi。具体的配置文件需要到network-scripts目录下看,通常是以ifcfg-开头的,比如ifcfg-eth0,我的是ifcfg-eno16777736,对于我这种洁癖来说回头非得改了这个乱七八糟的名字,另一个ifcfg-lo就是LOOPBACK网络咯。

# vi /etc/sysconfig/network-scripts/ifcfg-[tab两下]
ifcfg-eno16777736  ifcfg-lo

1. 编辑ifcfg-eno16777736:

BOOTPROTO=static #dhcp改为static(修改)
ONBOOT=yes #开机启用本配置,一般在最后一行(修改)

IPADDR=192.168.1.204 #静态IP(增加)
GATEWAY=192.168.1.2 #默认网关,虚拟机安装的话,通常是2,也就是VMnet8的网关设置(增加)
NETMASK=255.255.255.0 #子网掩码(增加)
DNS1=192.168.1.2 #DNS 配置,虚拟机安装的话,DNS就网关就行,多个DNS网址的话再增加(增加)

2. 重启网络服务

# service network restart

3. 检查网络

# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    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: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:58:14:ee brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.204/24 brd 192.168.1.255 scope global eno16777736
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe58:14ee/64 scope link 
       valid_lft forever preferred_lft forever

可以看到,eno16777736这个网络就起来了。  随便找个域名ping一下测试DNS是否OK:

# ping www.baidu.com
(责任编辑:IT)