Linux 系统中,将网络配置从 DHCP 改为静态 IP的几种方法-LMLPHP

Linux 系统中,将网络配置从 DHCP 改为静态 IP 可以通过几种不同的方法来实现,下面是几种常见的方式:

方法一:使用 connman(Connection Manager)

如果你已经在使用 connman 管理网络,可以通过修改 connman 的设置文件来配置静态 IP。

步骤:
  1. 找到相应网络接口的配置文件,路径通常在 /var/lib/connman/etc/connman 目录下。例如,文件名可能是类似 ethernet_xxxxxxxxxxx_cable

  2. 编辑该配置文件:

    sudo nano /var/lib/connman/ethernet_xxxxxxxxxxx_cable/settings
    
  3. 修改配置文件,使其类似如下内容:

    [ethernet_xxxxxxxxxxx_cable]
    Name=Wired
    AutoConnect=true
    IPv4.method=manual
    IPv4.netmask_prefixlen=24
    IPv4.local_address=192.168.30.116
    IPv4.gateway=192.168.30.1
    Nameservers=192.168.19.19
    IPv6.method=off
    IPv6.privacy=disabled
    
  4. 重启 connman 服务:

    sudo systemctl restart connman
    或者:
    /etc/init.d/S45connman restart
    
  5. 备注:

动态 IP 设置:
  • IPv4.method=dhcp:使用 DHCP 获取 IP 地址。
  • IPv4.DHCP.LastAddress=192.168.30.204:上次获取的 IP 地址。
静态 IP 设置:
  • IPv4.method=manual:手动设置 IP 地址。
  • IPv4.local_address=192.168.30.116:静态 IP 地址。
  • IPv4.netmask_prefixlen=24:子网掩码。
  • IPv4.gateway=192.168.30.1:网关地址。
  • Timeservers=ntp.ntsc.ac.cn;:时间服务器。
  • Nameservers=192.168.19.19;:DNS 服务器。

方法二:直接编辑 /etc/network/interfaces

另一种常见的方法是直接编辑 /etc/network/interfaces 文件。

步骤:
  1. 打开 interfaces 文件进行编辑:

    sudo nano /etc/network/interfaces
    
  2. 配置接口,例如 eth0,使其使用静态 IP:

    auto eth0
    iface eth0 inet static
        address 192.168.30.116
        netmask 255.255.255.0
        gateway 192.168.30.1
        dns-nameservers 192.168.19.19
    
  3. 重启网络服务:

    sudo systemctl restart networking
    

方法三:使用 nmcli 命令(NetworkManager)

如果系统中使用的是 NetworkManager,可以使用 nmcli 命令来配置静态 IP。

步骤:
  1. 显示当前连接的设备:

    nmcli device status
    
  2. 修改连接的配置,将其设置为静态 IP:

    sudo nmcli con modify eth0 ipv4.method manual ipv4.addresses 192.168.30.116/24 ipv4.gateway 192.168.30.1 ipv4.dns 192.168.19.19
    
  3. 启用新的配置:

    sudo nmcli con up eth0
    

方法四:直接编辑 /etc/dhcpcd.conf 文件

如果系统使用的是 dhcpcd 来管理网络,可以通过编辑 /etc/dhcpcd.conf 文件来设置静态 IP。

步骤:
  1. 打开 dhcpcd.conf 文件进行编辑:

    sudo nano /etc/dhcpcd.conf
    
  2. 添加或修改静态 IP 配置:

    interface eth0
    static ip_address=192.168.30.116/24
    static routers=192.168.30.1
    static domain_name_servers=192.168.19.19
    
  3. 重启 dhcpcd 服务:

    sudo systemctl restart dhcpcd
    
10-25 08:01