插件窝 干货文章 如何修改Linux DHCP默认网关

如何修改Linux DHCP默认网关

网关 DHCP sudo 319    来源:    2025-05-06

修改Linux DHCP默认网关的方法

要修改通过DHCP获取的默认网关,有几种不同的方法,具体取决于你的需求和Linux发行版。

方法一:修改DHCP客户端配置文件

对于dhclient (大多数Linux发行版)

  1. 编辑dhclient配置文件:

    sudo nano /etc/dhcp/dhclient.conf
    
  2. 添加或修改以下行来请求特定网关:

    interface "eth0" {
       supersede routers 192.168.1.1;
    }
    

    将"eth0"替换为你的网络接口名,将192.168.1.1替换为你想要的网关IP。

  3. 重启网络服务或DHCP客户端:

    sudo systemctl restart networking  # 对于Debian/Ubuntu
    # 或
    sudo systemctl restart NetworkManager  # 对于使用NetworkManager的系统
    # 或
    sudo dhclient -r && sudo dhclient  # 手动释放和更新DHCP租约
    

对于NetworkManager (较新的发行版)

  1. 编辑连接配置:

    sudo nmcli connection modify "Your Connection Name" ipv4.gateway "192.168.1.1"
    
  2. 重新激活连接:

    sudo nmcli connection up "Your Connection Name"
    

方法二:手动覆盖DHCP获取的网关

如果你只想临时修改网关而不影响DHCP配置:

  1. 删除当前默认路由:

    sudo ip route del default
    
  2. 添加新的默认路由:

    sudo ip route add default via 192.168.1.1
    

方法三:使用静态路由(保留DHCP网关)

如果你想保留DHCP获取的网关但添加特定路由:

sudo ip route add 10.0.0.0/8 via 192.168.1.1

永久生效设置

要使更改在重启后仍然有效:

  1. 对于Debian/Ubuntu,编辑/etc/network/interfaces

    iface eth0 inet dhcp
       post-up ip route del default
       post-up ip route add default via 192.168.1.1
    
  2. 对于RHEL/CentOS,编辑/etc/sysconfig/network-scripts/ifcfg-eth0

    GATEWAY=192.168.1.1
    

验证更改

检查当前路由表确认修改是否生效:

ip route show
# 或
route -n

注意:修改网络配置可能导致网络连接中断,建议在本地控制台操作或在有备用连接的情况下进行。