---
author: ''
category: 技术
comments_data:
- date: '2014-10-09 15:02:30'
  message: 不错
  postip: 58.215.78.58
  username: 晨风
- date: '2014-10-10 00:03:00'
  message: '@阿兜兜_時線TimeLine 好好学习，天天向上'
  postip: 127.0.0.1
  username: 微博评论
- date: '2014-10-10 02:33:00'
  message: 真麻烦 服务器上的 NM 就是烦人
  postip: 125.78.40.15
  username: 微博评论
- date: '2016-06-01 18:42:32'
  message: 亲，网关都没有怎么上网呢
  postip: 117.114.133.246
  username: 来自北京的 Chrome 51.0|Windows 10 用户
- date: '2017-02-21 16:38:45'
  message: 撒旦大神
  postip: 222.92.197.243
  username: 来自江苏苏州的 Sogou Explorer 2|Windows 7 用户
count:
  commentnum: 5
  favtimes: 10
  likes: 0
  sharetimes: 4
  viewnum: 202257
date: '2014-10-09 14:08:00'
editorchoice: false
excerpt: 问题：在CentOS 7上，我想要将我其中一个网络接口从DHCP改为静态IP地址配置，如何才能永久为CentOS或RHEL 7上的网络接口分配静态IP地址？  如果你想要为CentOS
  7中的某个网络接口设置静态IP地址，有几种不同的方法，这取决于你是否想要使用网络管理器。  网络管理器（Network Manager）是一个动态网络的控制器与配置系统，它用于当网络设备可用时保持设备和连接开启并激活。默认情况下，CentOS/RHEL
  7安装有网络管理器，并处于启用状态。 使用下面的命令来验证网络管理器服务的状态： $ systemctl status NetworkManager.service  运行以
fromurl: http://ask.xmodulo.com/configure-static-ip-address-centos7.html
id: 3977
islctt: true
largepic: /images/p/201410/08/221259airrli6rlijv5ot4.jpg
permalink: /article-3977-1.html
pic: /images/p/201410/08/221259airrli6rlijv5ot4.jpg.thumb.jpg
related: []
reviewer: ''
selector: ''
summary: 问题：在CentOS 7上，我想要将我其中一个网络接口从DHCP改为静态IP地址配置，如何才能永久为CentOS或RHEL 7上的网络接口分配静态IP地址？  如果你想要为CentOS
  7中的某个网络接口设置静态IP地址，有几种不同的方法，这取决于你是否想要使用网络管理器。  网络管理器（Network Manager）是一个动态网络的控制器与配置系统，它用于当网络设备可用时保持设备和连接开启并激活。默认情况下，CentOS/RHEL
  7安装有网络管理器，并处于启用状态。 使用下面的命令来验证网络管理器服务的状态： $ systemctl status NetworkManager.service  运行以
tags:
- IP地址
- 网络
thumb: false
title: Linux有问必答：如何为CentOS 7配置静态IP地址
titlepic: false
translator: GOLinux
updated: '2014-10-09 14:08:00'
---


> 
> **问题**：在CentOS 7上，我想要将我其中一个网络接口从DHCP改为静态IP地址配置，如何才能永久为CentOS或RHEL 7上的网络接口分配静态IP地址？
> 
> 
> 


如果你想要为CentOS 7中的某个网络接口设置静态IP地址，有几种不同的方法，这取决于你是否想要使用网络管理器。


![](/images/p/201410/08/221259airrli6rlijv5ot4.jpg)


网络管理器（Network Manager）是一个动态网络的控制器与配置系统，它用于当网络设备可用时保持设备和连接开启并激活。默认情况下，CentOS/RHEL 7安装有网络管理器，并处于启用状态。


使用下面的命令来验证网络管理器服务的状态：



```
$ systemctl status NetworkManager.service

```

运行以下命令来检查受网络管理器管理的网络接口：



```
$ nmcli dev status 

```

![](/images/p/201410/08/221302p9lwjl996jgz55bg.jpg)


如果某个接口的nmcli的输出结果是“已连接”（如本例中的enp0s3），这就是说该接口受网络管理器管理。你可以轻易地为某个特定接口禁用网络管理器，以便你可以自己为它配置一个静态IP地址。


下面将介绍**在CentOS 7上为网络接口配置静态IP地址的两种方式**，在例子中我们将对名为enp0s3的网络接口进行配置。


### 不使用网络管理配置静态IP地址


进入/etc/sysconfig/network-scripts目录，找到该接口的配置文件（ifcfg-enp0s3）。如果没有，请创建一个。


![](/images/p/201410/08/221305nsr4i3n02bx4ri32.jpg)


打开配置文件并编辑以下变量：


![](/images/p/201410/08/221307yl6oq3fs5tp5o532.jpg)


在上图中，“NM\_CONTROLLED=no”表示该接口将通过该配置文件进行设置，而不是通过网络管理器进行管理。“ONBOOT=yes”告诉我们，系统将在启动时开启该接口。


保存修改并使用以下命令来重启网络服务：



```
# systemctl restart network.service

```

现在验证接口是否配置正确：



```
# ip add 

```

![](/images/p/201410/08/220914co9y3z00ymqgttbb.jpg)


### 使用网络管理器配置静态IP地址


如果你想要使用网络管理器来管理该接口，你可以使用nmtui（网络管理器文本用户界面），它提供了在终端环境中配置配置网络管理器的方式。


在使用nmtui之前，首先要在/etc/sysconfig/network-scripts/ifcfg-enp0s3中设置“NM\_CONTROLLED=yes”。


现在，请按以下方式安装nmtui。



```
# yum install NetworkManager-tui

```

然后继续去编辑enp0s3接口的网络管理器配置：



```
# nmtui edit enp0s3 

```

在下面的屏幕中，我们可以手动输入与/etc/sysconfig/network-scripts/ifcfg-enp0s3中所包含的内容相同的信息。


使用箭头键在屏幕中导航，按回车选择值列表中的内容（或填入想要的内容），最后点击屏幕底部右侧的确定按钮。


![](/images/p/201410/08/221310v8a38lfcuh8cbk1h.jpg)


最后，重启网络服务。



```
# systemctl restart network.service

```

好了，现在一切都搞定了。




---


via: <http://ask.xmodulo.com/configure-static-ip-address-centos7.html>


译者：[GOLinux](https://github.com/GOLinux) 校对：[wxy](https://github.com/wxy)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出