🎈 作者:Linux猿

🎈 简介:CSDN博客专家🏆,华为云享专家🏆,Linux、C/C++、云计算、物联网、面试、刷题、算法尽管咨询我,关注我,有问题私聊!

🎈 欢迎小伙伴们点赞👍、收藏⭐、留言💬


        CentOS 7 的 IP 地址在使用的时候,如果使用动态 IP 地址,IP 地址可能会变化,例如:在连接 PostgreSQL 数据库的时候,所以设置成静态 IP 后 IP 就可以固定了,另外,在 /etc/hosts 里如果设置了域名与 IP 的配置,如果 IP 变化就对应不上了,设置成静态 IP 更合适。本篇文章主要设置 CentOS 7 静态 IP 地址。

一、操作环境

        操作环境影响不大,只要是「红帽系列」的应该都可以采用本文的设置方法,例如:fedora、Redhat。 

[node@k8s-master ~]$ cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
[node@k8s-master ~]$

二、设置静态 IP

        修改文件 /etc/sysconfig/network-scripts/ifcfg-ens33 文件,如下所示。修改的配置文件 ifcfg-ens33 要对应系统上正在使用的网卡,可以使用 ifconfig 查看下当前的 IP 对应的是哪个网卡。

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=ens33
UUID=2de148e1-945e-4744-bc6d-18394e985967
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.231.152 # 静态 IP
NETMASK=255.255.255.0 # 子网掩码
GATEWAY=192.168.231.2 # 网关
DNS1=192.168.231.2  # DNS

        如上所示,需要设置的字段有五个,其中,IPADDR 是你想设置的静态 IP,NETMASK 为子网掩码,可以通过如下方式查看。

[node@k8s-master ~]$ ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.231.152  netmask 255.255.255.0  broadcast 192.168.231.255
        inet6 fe80::e3a3:533b:4112:90d5  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:ca:f5:28  txqueuelen 1000  (Ethernet)
        RX packets 3507  bytes 288058 (281.3 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1958  bytes 256066 (250.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 247120  bytes 90060437 (85.8 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 247120  bytes 90060437 (85.8 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:84:91:8b  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[node@k8s-master ~]$

        在网卡 ens33 信息中,netmask 255.255.255.0 即为子网掩码。

        GATWAY 字段设置的值的查询方式如下所示。

[node@k8s-master ~]$ netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         192.168.231.2   0.0.0.0         UG        0 0          0 ens33
192.168.122.0   0.0.0.0         255.255.255.0   U         0 0          0 virbr0
192.168.231.0   0.0.0.0         255.255.255.0   U         0 0          0 ens33
[node@k8s-master ~]$

        如上所示,Gateway 列下面即为网关地址。

        DNS1 字段值查询方式如下所示。

[node@k8s-master ~]$ cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 192.168.231.2
[node@k8s-master ~]$

三、重启网络

        当前网络未加载当前修改的配置,所以需要重启网络重新加载下配置,执行如下命令。 

[node@k8s-master ~]$ systemctl restart network
==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-units ===
Authentication is required to manage system services or units.
Authenticating as: root
Password:
==== AUTHENTICATION COMPLETE ===
[node@k8s-master ~]$

        重启网络后执行 ifconfig 或 ipaddr 命令即可看到设置的静态 IP啦~

四、参考链接

[1] Centos7(LInux)设置静态IP的方法_centos7配置静态网络_枼默的博客-CSDN博客

[2] CentOS7 查看IP、Gateway、DNS、Hostname、网关_查看centos的dns_华夏毓秀的博客-CSDN博客​​​[

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐