Linux-静态配置ip地址

发布于:2025-08-11 ⋅ 阅读:(20) ⋅ 点赞:(0)


一、rocky linux 9.6 静态配置

建议安装rocky linux的时候选择英文版的

1. 进入网络连接配置目录

[root@localhost ~]# cd /etc/NetworkManager/system-connections/
[root@localhost system-connections]# ls
ens33.nmconnection

2. 查看网络连接

[root@localhost system-connections]# nmcli c
NAME UUID TYPE DEVICE
ens33 8821a626-ccef-311c-9292-9170759181f5 ethernet ens33
lo 515a4843-faf4-46ac-a10a-defcbb781ea9 loopback lo
[root@nginx-1 system-connections]# nmcli d
DEVICE TYPE STATE CONNECTION
ens33 ethernet 已连接 ens33
lo loopback 连接(外部) lo

nmcli 选项

  • g[eneral] NetworkManager’s general status and operations
  • n[etworking] overall networking control #可以禁用和开启网络
  • c[onnection] NetworkManager’s connections #查看网络连接相关
  • d[evice] devices managed by NetworkManager #可以禁用网卡
  • a[gent] NetworkManager secret agent or polkit agent
  • m[onitor] monitor NetworkManager changes

nmcli n 查询网络功能是否开启
nmcli n off 关闭所有的网络连接
nmcli n on 开启所有的网络连接


3. 更改安装的时候静态配置的ip地址

[root@localhost system-connections]# vim ens33.nmconnection 
[connection]
id=ens33
uuid=8821a626-ccef-311c-9292-9170759181f5
type=ethernet
autoconnect-priority=-999
interface-name=ens33
timestamp=1754637831

[ethernet]

[ipv4]	# 更改ip,dns,网关
address1=192.168.100.170/24
dns=114.114.114.114;
gateway=192.168.100.2
method=manual
# method=auto

[ipv6]
addr-gen-mode=eui64
method=auto

[proxy]

4. 重启ens33网络连接,加载新的配置

重新加载配置文件

[root@localhost system-connections]#nmcli c reload

重启指定连接

[root@localhost system-connections]# nmcli c down ens33 && nmcli c up ens33

连接断开,重新用新的ip地址连接即可


5. 中文版手工配置ip地址可能出现的问题

修改配置文件ens33.nmconnection里的ip地址,不生效的问题

下面是解决方案

  1. 查看网络连接,发现我们的网络连接的名字叫 “有线连接 1”

[root@nginx-1 system-connections]# nmcli c
NAME UUID TYPE DEVICE
有线连接 1 e7bc5ecb-3dbb-395e-8d2c-bd0ce74ab85c ethernet ens33
lo 02a89aa5-05b9-49c5-8fe6-97e5ec9a60db loopback lo
[root@nginx-1 system-connections]#

  1. 进入网络连接的配置目录
[root@nginx-1 system-connections]# vim ens33.nmconnection 
[connection]
id=ens33
uuid=e7bc5ecb-3dbb-395e-8d2c-bd0ce74ab85c  #修改uuid为中文连接(有线连接 1)的名字对应的uuid

  1. 重启rocky linux系统

[root@nginx-1 system-connections]# reboot

查看网络连接,就是英文的名字ens33

[root@nginx-1 system-connections]# nmcli c
NAME UUID TYPE DEVICE
ens33 e7bc5ecb-3dbb-395e-8d2c-bd0ce74ab85c ethernet ens33
lo 1f85b336-a1cd-4001-8768-4311df0c3f69 loopback lo

  1. 然后再去修改ens33.nmconnection

  2. 重新加载配置,刷新网络连接配置

[root@localhost system-connections]#nmcli c reload
[root@nginx-1 system-connections]# nmcli c down ens33 && nmcli c up ens33

再次查看ip地址

[root@nginx-1 system-connections]#ip add

查看dns服务器的地址

[root@web-2 ~]# cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 114.114.114.114
nameserver 8.8.4.4


二、centos 7.9 静态配置

1. 进入网络连接的配置目录

[root@router ~]# cd /etc/sysconfig/network-scripts/
[root@router network-scripts]# ls
ifcfg-ens33 ifdown-ippp ifdown-sit ifup-bnep ifup-plusb ifup-TeamPort
ifdown-ipv6 ifdown-Team ifup-eth ifup-post ifup-tunnel
ifcfg-lo ifdown-isdn ifdown-TeamPort ifup-ippp ifup-ppp ifup-wireless
ifdown ifdown-post ifdown-tunnel ifup-ipv6 ifup-routes init.ipv6-global
ifdown-bnep ifdown-ppp ifup ifup-isdn ifup-sit network-functions
ifdown-eth ifdown-routes ifup-aliases ifup-plip ifup-Team network-functions-ipv6

ifcfg-ens33 是我们的第1块网卡对应的配置文件


2. 查看网络连接

[root@nginx-1 system-connections]# nmcli c
NAME UUID TYPE DEVICE
ens33 e7bc5ecb-3dbb-395e-8d2c-bd0ce74ab85c ethernet ens33
lo 1f85b336-a1cd-4001-8768-4311df0c3f69 loopback lo


3. 修改配置文件

[root@router network-scripts]# vim ifcfg-ens33
BOOTPROTO="none"      # none 或者 static 表示静态配置ip地址  dhcp表示动态获得     
NAME="ens33"         #网络连接的名字
DEVICE="ens33"       #网卡的名字
ONBOOT="yes"         #开机激活网络连接  yes   激活   no 禁用
IPADDR=192.168.100.254  #设置的ip地址
NETMASK=255.255.255.0  #子网掩码
#PREFIX=24    #子网掩码
GATEWAY=192.168.100.2  #指定网关
DNS1=114.114.114.114  #指定首选DNS服务器ip
DNS2=59.51.78.211    #指定备用DNS服务器ip

4. 刷新network服务

[root@router network-scripts]# service network restart
Restarting network (via systemctl): [ 确定 ]

查看ip地址
ip add
查看路由
ip route

查看DNS服务器地址

[root@router network-scripts]# cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 114.114.114.114
nameserver 59.51.78.211
nameserver 222.246.129.80

ifcfg-ens33里的dns服务器地址在网络服务刷新的时候,会覆盖/etc/resolv.conf里的nameserver对应的ip地址

真正查询域名的时候,会去/etc/resolv.conf查询dns服务器地址


三、ubuntu 24.04 静态配置

1. 进入网络连接的配置目录

root@sanchuang:~# cd /etc/netplan/
root@sanchuang:/etc/netplan# ls
50-cloud-init.yaml # 是网卡的配置文件

root@sanchuang:/etc/netplan# cat 50-cloud-init.yaml 
# This file is generated from information provided by the datasource.  Changes
# to it will not persist across an instance reboot.  To disable cloud-init's
# network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
    ethernets:
        ens33:
            dhcp4: true
    version: 2

2. 修改配置文件

root@sanchuang:/etc/netplan# vim 50-cloud-init.yaml 
# This file is generated from information provided by the datasource.  Changes
# to it will not persist across an instance reboot.  To disable cloud-init's
# network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
    ethernets:
        ens33:
            dhcp4: no
            addresses: [192.168.100.152/24]
            routes:
              - to: default
                via: 192.168.100.2
            nameservers:
              addresses: [114.114.114.114, 8.8.8.8]
    version: 2

3. 刷新网络配置

root@sanchuang:/etc/netplan# netplan apply

查看dns服务器地址

root@sanchuang:/etc/netplan# resolvectl status  
Global
         Protocols: -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
  resolv.conf mode: stub

Link 2 (ens33)
    Current Scopes: DNS
         Protocols: +DefaultRoute -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
       DNS Servers: 114.114.114.114 8.8.8.8

查看ip

root@sanchuang:/etc/netplan# ip add 
1: lo: <LOOPBACK,UP,LOWER_UP> 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
    inet6 ::1/128 scope host noprefixroute 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:40:40:57 brd ff:ff:ff:ff:ff:ff
    altname enp2s1
    inet 192.168.100.151/24 brd 192.168.100.255 scope global ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe40:4057/64 scope link 
       valid_lft forever preferred_lft forever

查看路由

root@sanchuang:/etc/netplan# ip route
default via 192.168.100.2 dev ens33 proto static
192.168.100.0/24 dev ens33 proto kernel scope link src 192.168.100.151


总结

在 CentOS、Rocky Linux 和 Ubuntu 中手工配置 IP 地址的核心原理相同,但由于系统版本、默认网络管理工具的差异,具体操作存在一些区别

差异:配置的文件的路径不一样,参数也不一样