0

0

CentOS怎么固定IP设置_CentOS配置静态IP地址详细步骤教程

爱谁谁

爱谁谁

发布时间:2025-08-30 08:08:01

|

872人浏览过

|

来源于php中文网

原创

设置CentOS固定IP需编辑网卡配置文件,将BOOTPROTO改为static,并配置IPADDR、NETMASK、GATEWAY、DNS,最后重启网络服务;适用于服务器需稳定网络的场景。

centos怎么固定ip设置_centos配置静态ip地址详细步骤教程

给CentOS设置固定IP,核心就是手动编辑其网络配置文件,将动态获取IP的方式改为静态分配,并指定IP地址、子网掩码、网关和DNS服务器。这对于需要稳定网络访问的服务器环境来说,是基础且关键的一步。

我通常会这么操作,这套流程下来基本没出过什么大问题:

首先,得确定你要修改哪个网卡。一般服务器上可能不止一个,用

ip a
命令看看,找到你准备配置的那个,比如
enp0s3
或者老系统上的
eth0

ip a

找到对应的网卡名,比如我这里假设是

enp0s3

接着,我们要去编辑那个网卡的配置文件。路径通常是

/etc/sysconfig/network-scripts/ifcfg-enp0s3
。用
vi
nano
打开它:

sudo vi /etc/sysconfig/network-scripts/ifcfg-enp0s3

文件内容大概是这样,我们需要修改或添加一些行:

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"          # 重点:从 "dhcp" 改成 "static"
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="enp0s3"
UUID="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" # 这个UUID每个机器都不一样,保持不变
DEVICE="enp0s3"
ONBOOT="yes"                # 重点:确保开机启动时激活这个网卡
IPADDR="192.168.1.100"      # 你的固定IP地址
NETMASK="255.255.255.0"     # 子网掩码
GATEWAY="192.168.1.1"       # 网关地址
DNS1="8.8.8.8"              # 首选DNS服务器
DNS2="114.114.114.114"      # 备用DNS服务器

几个关键点:

  • BOOTPROTO="static"
    :这行是告诉系统,IP地址要手动设置。
  • ONBOOT="yes"
    :确保系统启动时这个网卡就自动激活。
  • IPADDR
    NETMASK
    GATEWAY
    DNS1
    DNS2
    :这些是你根据自己网络环境来填的。
    IPADDR
    要确保在你的局域网内是唯一的,并且没有被其他设备占用。
    GATEWAY
    通常是你的路由器地址。
    DNS
    可以用公共的,也可以用你内网的DNS服务器。

保存并关闭文件。

最后一步,也是最容易被遗忘的一步,就是重启网络服务,让配置生效。

sudo systemctl restart network
# 或者如果你用的是NetworkManager,并且希望它管理网络
# sudo systemctl restart NetworkManager

重启后,用

ip a
ping www.baidu.com
检查一下,看看IP地址是不是已经固定,并且网络连接是否正常。如果能ping通外网,那基本上就大功告成了。

为什么需要给CentOS设置固定IP地址?

这问题其实挺有意思的,很多人觉得DHCP自动分配IP挺方便的,干嘛要自找麻烦设固定IP呢?我个人经验是,一旦你把CentOS当服务器用,固定IP几乎是必选项。你想想看,如果你的数据库服务器、Web服务器或者文件共享服务器的IP地址老是变来变去,那其他客户端怎么找到它?每次重启服务器,IP变了,你就要去改所有依赖它的配置,那得多麻烦。

具体来说,有几个场景非固定IP不可:

OpenArt
OpenArt

在线AI绘画艺术图片生成器工具

下载
  1. 提供网络服务: 像Web服务(Apache/Nginx)、数据库(MySQL/PostgreSQL)、FTP、SSH远程访问等等,这些服务都需要一个稳定的入口。客户端通过IP地址来访问,IP一变,服务就“失联”了。
  2. 端口转发与防火墙规则: 如果你在路由器上设置了端口转发,或者在防火墙(比如
    firewalld
    iptables
    )里写了规则,这些规则通常是基于IP地址的。IP地址一变,这些规则就失效了。
  3. DNS解析: 虽然可以通过域名解析到服务器,但很多时候,特别是在内网环境,我们直接用IP访问更方便快捷。而且,如果你的服务器本身就是DNS服务器,那它自己的IP更不能变。
  4. 集群与分布式系统: 在一些复杂的集群架构中,节点之间的通信往往依赖于固定的IP地址列表。IP地址的变动会直接导致集群故障。
  5. 日志与监控: 很多监控系统和日志收集工具会根据IP地址来识别不同的服务器。固定IP有助于保持数据的一致性和可追溯性。

总之,固定IP给你的服务器提供了一个稳定的“门牌号”,让它在网络中始终可被找到,这对于任何需要长期、稳定运行的服务来说,都是基石。

如何查看CentOS当前的IP地址和网络配置?

在动手修改配置之前,先摸清楚现状是很有必要的。这就像修车前先听听发动机响声,对吧?我常用的几个命令能让你对当前网络状况有个全面了解。

  1. 查看IP地址和网卡信息:

    ip a
    ifconfig
    (如果已安装)
    ip a
    (即
    ip address
    ) 是现代Linux系统里最推荐的命令,它能显示所有网络接口的详细信息,包括IP地址、MAC地址、网卡状态等。

    ip a

    你会看到类似这样的输出:

    1: lo:  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
    2: enp0s3:  mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
        link/ether 08:00:27:xx:xx:xx brd ff:ff:ff:ff:ff:ff
        inet 192.168.1.10/24 brd 192.168.1.255 scope global dynamic enp0s3 # 这里的inet行就是IP地址
           valid_lft 86259sec preferred_lft 86259sec

    重点看

    inet
    那一行,它会显示当前的IP地址和子网掩码(
    /24
    表示
    255.255.255.0
    )。

  2. 查看路由表:

    ip r
    route -n
    这个命令能告诉你数据包是怎么从你的CentOS服务器发出去的,特别是默认网关(Gateway)在哪里。

    ip r

    输出示例:

    default via 192.168.1.1 dev enp0s3 proto dhcp metric 100
    192.168.1.0/24 dev enp0s3 proto kernel scope link src 192.168.1.10 metric 100

    default via 192.168.1.1
    这行就是默认网关,它告诉系统所有发往外部网络的流量都应该通过
    192.168.1.1
    这个地址走。

  3. 查看DNS服务器:

    cat /etc/resolv.conf
    这个文件记录了系统用于解析域名的DNS服务器地址。

    cat /etc/resolv.conf

    内容可能像这样:

    # Generated by NetworkManager
    search localdomain
    nameserver 8.8.8.8
    nameserver 114.114.114.114

    nameserver
    后面的就是DNS服务器地址。

通过这些命令,你就能对当前的网络配置有个清晰的认识,这对于后续的固定IP配置和排查问题都非常有帮助。

CentOS固定IP设置后不生效怎么办?常见问题及排查。

相关专题

更多
mysql修改数据表名
mysql修改数据表名

MySQL修改数据表:1、首先查看数据库中所有的表,代码为:‘SHOW TABLES;’;2、修改表名,代码为:‘ALTER TABLE 旧表名 RENAME [TO] 新表名;’。php中文网还提供MySQL的相关下载、相关课程等内容,供大家免费下载使用。

663

2023.06.20

MySQL创建存储过程
MySQL创建存储过程

存储程序可以分为存储过程和函数,MySQL中创建存储过程和函数使用的语句分别为CREATE PROCEDURE和CREATE FUNCTION。使用CALL语句调用存储过程智能用输出变量返回值。函数可以从语句外调用(通过引用函数名),也能返回标量值。存储过程也可以调用其他存储过程。php中文网还提供MySQL创建存储过程的相关下载、相关课程等内容,供大家免费下载使用。

246

2023.06.21

mongodb和mysql的区别
mongodb和mysql的区别

mongodb和mysql的区别:1、数据模型;2、查询语言;3、扩展性和性能;4、可靠性。本专题为大家提供mongodb和mysql的区别的相关的文章、下载、课程内容,供大家免费下载体验。

281

2023.07.18

mysql密码忘了怎么查看
mysql密码忘了怎么查看

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql密码忘了怎么办呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

514

2023.07.19

mysql创建数据库
mysql创建数据库

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS 应用软件之一。那么mysql怎么创建数据库呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

253

2023.07.25

mysql默认事务隔离级别
mysql默认事务隔离级别

MySQL是一种广泛使用的关系型数据库管理系统,它支持事务处理。事务是一组数据库操作,它们作为一个逻辑单元被一起执行。为了保证事务的一致性和隔离性,MySQL提供了不同的事务隔离级别。php中文网给大家带来了相关的教程以及文章欢迎大家前来学习阅读。

386

2023.08.08

sqlserver和mysql区别
sqlserver和mysql区别

SQL Server和MySQL是两种广泛使用的关系型数据库管理系统。它们具有相似的功能和用途,但在某些方面存在一些显著的区别。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

529

2023.08.11

mysql忘记密码
mysql忘记密码

MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。那么忘记mysql密码我们该怎么解决呢?php中文网给大家带来了相关的教程以及其他关于mysql的文章,欢迎大家前来学习阅读。

599

2023.08.14

高德地图升级方法汇总
高德地图升级方法汇总

本专题整合了高德地图升级相关教程,阅读专题下面的文章了解更多详细内容。

43

2026.01.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Rust 教程
Rust 教程

共28课时 | 4.5万人学习

PostgreSQL 教程
PostgreSQL 教程

共48课时 | 7.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号