Skip to content

在 CentOS 上设置 IP 地址

在这篇文章中

Centos 7

CentOS 7 中的网络接口通过配置文件 /etc/sysconfig/network-scripts/ifcfg-eno1 进行存储和配置,其中 eno1 是活动网卡的名称。可以通过运行以下命令来查看操作系统中可用的网卡名称、链路可用性以及当前地址:

ip address

如何配置 DHCP

警告

根据 服务条款及网站使用条款,禁止在外部以太网接口上启用 DHCP 服务。

删除 IPADDRNETMASKGATEWAY 变量,并在 BOOTPROTO 中指定值 dhcp

NAME="eno1"
ONBOOT=yes
BOOTPROTO=dhcp
HWADDR="ac:1f:6b:f6:3b:7e"
TYPE=Ethernet

如何设置静态 IP 地址

以下是为名为 eno1 的接口配置静态 IP 地址的示例:

```bash
NAME="eno1"
ONBOOT=yes
BOOTPROTO=static
HWADDR="ac:1f:6b:f6:3b:7e"
IPADDR="82.148.21.50"
NETMASK="255.255.255.0"
GATEWAY="82.148.21.1"
TYPE=Ethernet
```

应用配置

更改配置文件后,需要重新加载接口:

systemctl restart network

警告

重新加载后,更改将生效。如果不重新加载网络,则更改仅在服务器重启后才会应用。

您可以使用以下命令检查网络设置:

ip address

NetworkManager

信息

配置 IP 的替代方法是使用 NetworkManager 实用程序。

添加接口

sudo nmcli con add con-name "static-ens224" ifname ens224 type ethernet ip4 192.168.1.76/24 gw4 192.168.1.1

在接口上设置 DHCP:

警告

根据 服务条款及网站使用条款,禁止在外部以太网接口上启用 DHCP 服务。

sudo nmcli con mod "System ens192" ipv4.method auto

设置静态 IP 地址:

sudo nmcli con mod "System ens192" ipv4.method manual

添加路由后,必须重启 NetworkManager 服务。

sudo systemctl restart NetworkManager

Centos 8

NetworkManager

备注

默认情况下,NetworkManager 是在 CentOS 8 中设置网络的推荐方式。所有其他方法已过时。

添加接口

$ sudo nmcli con add con-name "static-ens224" ifname ens224 type ethernet ip4 192.168.1.76/24 gw4 192.168.1.1

在接口上设置 DHCP

警告

根据 服务条款及网站使用条款,禁止在外部以太网接口上启用 DHCP 服务。

nmcli con add con-name eth3 type ethernet ifname eth3 ipv4.method auto

设置静态 IP 地址:

nmcli con add con-name eth2 type ethernet ifname eth2 ipv4.method manual ipv4.address 192.168.0.15/24 ipv4.gateway 192.168.0.1

添加路由后,必须重启 NetworkManager 服务。

$ sudo systemctl restart NetworkManager

备注

CentOS 8 中的网络接口也通过配置文件 /etc/sysconfig/network-scripts/ifcfg-eno1 进行存储和配置。

如何配置 DHCP

警告

根据 服务条款及网站使用条款,禁止在外部以太网接口上启用 DHCP 服务。

删除 IPADDRNETMASKGATEWAY 变量,并在 BOOTPROTO 中指定值 dhcp

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
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="enp1s0"
UUID="d5f41bf4-de0a-43b3-b633-7e2ec6212e58"
DEVICE="enp1s0"
ONBOOT="yes"

如何设置静态 IP 地址

配置静态 IP 地址的示例:

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="none"
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="enp1s0"
UUID="d5f41bf4-de0a-43b3-b633-7e2ec6212e58"
DEVICE="enp1s0"
ONBOOT="yes"
IPADDR=192.168.122.66
PREFIX=24
GATEWAY=192.168.122.1
DNS1=192.168.122.1

应用配置

更改配置文件后,需要重新加载接口:

systemctl restart network

警告

重新加载后,更改将生效。如果不重新加载网络,则更改仅在服务器重启后才会应用。

您可以使用以下命令检查网络设置:

ip address

CentOS 9-10 Stream

在配置网络时,了解 NetworkManager 中活动网络接口与连接配置文件之间的区别至关重要:

  1. 活动网络接口(通过 ip addr show 命令可见)- 这是当前工作的连接,可以在系统启动期间通过 DHCP 自动配置。

  2. NetworkManager 连接配置文件(通过 nmcli connection 管理)- 这是一种持久性配置,保存在系统中并在每次启动时应用。

警告

即使 NetworkManager 中没有配置文件,接口也可以是活动且正常工作的。这可能会导致混淆,因为由于缺少配置文件,nmcli connection modify 命令可能无法工作,尽管该接口在系统中显示且处于运行状态。

在进行任何配置之前,始终执行初始检查:

  • 检查活动接口:

    ip addr show
    
  • 检查现有的 NetworkManager 配置文件:

    nmcli connection show
    
  • 检查设备状态:

    nmcli device status
    

如果缺少配置文件,需要在进行进一步配置之前创建它:

nmcli connection add type ethernet con-name "interface_name" ifname "interface_name" 

1. SSH 连接

基本连接

ssh username@ip_address

2. 初始网络诊断

  • 查看网络接口

    ip addr show
    nmcli device status
    
  • 检查当前连接

    nmcli connection show
    

3. 配置文件位置

主要目录:

  • 连接文件:/etc/NetworkManager/system-connections/
  • 附加配置:/etc/NetworkManager/conf.d/
  • 主配置:/etc/NetworkManager/NetworkManager.conf

如何配置静态 IP 地址

创建新连接

```bash
nmcli connection add type ethernet con-name "static-eth0" \
ifname eth0 \
ipv4.method manual \
ipv4.addresses 192.168.1.100/24 \
ipv4.gateway 192.168.1.1 \
ipv4.dns "8.8.8.8"
```

修改现有连接

```bash
nmcli connection modify "System eth0" \
ipv4.method manual \
ipv4.addresses 192.168.1.100/24 \
ipv4.gateway 192.168.1.1 \
ipv4.dns "8.8.8.8"
```

编辑配置文件:

  • 查找必要的配置

    ls /etc/NetworkManager/system-connections/
    
  • 打开文件进行编辑

    nano /etc/NetworkManager/system-connections/static-eth0.nmconnection
    
  • 设置正确的访问权限

    sudo chmod 600 /etc/NetworkManager/system-connections/static-eth0.nmconnection
    

静态 IP 的文件内容示例:

[connection]
id=static-eth0
type=ethernet
interface-name=eth0


[ipv4]
method=manual
addresses=192.168.1.100/24
gateway=192.168.1.1
dns=8.8.8.8

如何配置接口以使用 DHCP

警告

根据 服务条款及网站使用条款,禁止在公司网络中拥有响应请求的活动 DHCP 服务器。

nmcli connection modify "System eth0" \
ipv4.method auto

应用配置更改

修改配置文件后,需要按照以下步骤重新加载接口:

  1. 重新加载配置:

    systemctl reload NetworkManager
    
  2. 重启连接:

    sudo nmcli connection down "static-eth0"
    sudo nmcli connection up "static-eth0"
    

您可以使用以下命令验证网络设置:

  • 检查连接状态:

    nmcli connection show "static-eth0"
    
  • 检查 IP 地址:

    ip addr show eth0
    
question_mark
Is there anything I can help you with?
question_mark
AI Assistant ×