当前位置:首页 > Linux > 正文

如何在Linux系统中配置默认网关?

在Linux系统中,配置默认网关可通过命令临时设置或修改配置文件永久生效,临时方法:使用 ip route add default via [网关IP]route add default gw [网关IP],永久配置需编辑网络接口文件(如/etc/network/interfaces或/etc/sysconfig/network-scripts/ifcfg-网卡名),添加 gateway=[网关IP]并重启网络服务。

使用命令行工具临时配置

ip route 命令(推荐)

sudo ip route replace default via <网关IP> dev <网络接口>
  • 示例:设置默认网关为168.1.1,通过eth0接口
    sudo ip route replace default via 192.168.1.1 dev eth0

传统route命令(老版本系统)

sudo route add default gw <网关IP> <网络接口>
  • 示例
    sudo route add default gw 192.168.1.1 eth0

注意:以上方法重启后失效,适用于临时调试。


永久配置默认网关

Ubuntu/Debian系统

  • 编辑网络配置文件(以netplan为例):
    sudo nano /etc/netplan/01-netcfg.yaml
  • 在配置文件中添加gateway4字段:
    network:
      version: 2
      ethernets:
        eth0:
          dhcp4: no
          addresses: [192.168.1.10/24]
          gateway4: 192.168.1.1
  • 应用配置:
    sudo netplan apply

CentOS/RHEL系统

  • 编辑网卡配置文件:
    sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0
  • 添加或修改以下参数:
    GATEWAY=192.168.1.1
  • 重启网络服务:
    sudo systemctl restart network

使用NetworkManager工具

若系统使用NetworkManager,可通过nmtuinmcli配置:

# 使用图形化工具
sudo nmtui
# 或通过命令行修改
sudo nmcli connection modify <连接名> ipv4.gateway "192.168.1.1"
sudo nmcli connection down <连接名> && sudo nmcli connection up <连接名>

验证配置

检查当前路由表

ip route show | grep default

输出应显示类似:

如何在Linux系统中配置默认网关?  第1张

default via 192.168.1.1 dev eth0

测试网络连通性

ping 8.8.8.8  # 测试外部IP连通性
ping google.com  # 测试DNS解析(需确保DNS配置正确)

常见问题排查

  1. 网关不可达

    • 检查网关IP是否与本地网络在同一子网。
    • 执行ping <网关IP>确认可达性。
  2. 配置未生效

    • 确认配置文件语法无错误(如YAML缩进)。
    • 重启网络服务或系统。
  3. 防火墙拦截

    • 使用iptables -Lfirewall-cmd --list-all检查规则。
  4. 多网卡冲突

    确保仅一个默认网关生效,避免路由混淆。


引用说明

  • Linux ip-route手册页(man ip-route
  • Netplan官方文档(https://netplan.io)
  • Red Hat网络配置指南(https://access.redhat.com)
0