删除默认网关后无法上网怎么办

临时配置网关(重启失效)

适用于临时测试或紧急调整,使用ip route命令:

# 添加新网关(替换192.168.1.1为你的网关IP)
sudo ip route add default via 192.168.1.1 dev eth0
  • 验证ip route show 查看是否出现 default via 192.168.1.1 dev eth0
  • 测试ping 8.8.8.8 检查网络连通性。

永久配置网关(不同发行版方法)

Debian/Ubuntu 系统

方法1:修改 /etc/network/interfaces

sudo nano /etc/network/interfaces

在网卡配置块(如 eth0)中添加:

auto eth0
iface eth0 inet static
    address 192.168.1.100    # 本机IP
    netmask 255.255.255.0
    gateway 192.168.1.1      # 网关IP
    dns-nameservers 8.8.8.8  # DNS服务器

生效sudo systemctl restart networking

方法2:使用Netplan(Ubuntu 18.04+)
编辑YAML配置文件(如 /etc/netplan/01-netcfg.yaml):

network:
  version: 2
  ethernets:
    eth0:
      addresses: [192.168.1.100/24]
      routes:
        - to: default
          via: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8]

生效sudo netplan apply

CentOS/RHEL 系统

方法1:修改网卡配置文件
编辑 /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1       # 网关IP
DNS1=8.8.8.8

生效sudo systemctl restart network

方法2:修改全局网关文件
编辑 /etc/sysconfig/network

GATEWAY=192.168.1.1
NETWORKING=yes

生效:重启系统或重启网络服务。


通过NetworkManager配置(图形界面/命令行)

图形界面(适合桌面用户)

  1. 打开 Settings > Network
  2. 选择网卡 → 点击齿轮图标 → IPv4
  3. 填写 AddressesNetmask,在 Gateway 栏输入网关IP → 保存

命令行工具(nmcli)

sudo nmcli con mod eth0 ipv4.gateway "192.168.1.1"
sudo nmcli con up eth0

验证网关配置

  1. 查看网关路由
    ip route | grep default  # 输出示例: default via 192.168.1.1 dev eth0
  2. 测试外网连通性
    ping -c 4 google.com
  3. 检查DNS解析
    nslookup example.com

注意事项

  1. 权限要求:所有命令需 sudo 或 root 权限执行。
  2. 网卡名称差异:根据实际替换 eth0(现代系统可能为 enp0s3 等)。
  3. 防火墙干扰:若无法访问外网,检查防火墙规则:
    sudo iptables -L  # 查看规则
    sudo systemctl stop firewalld  # 临时关闭(测试用)
  4. 多网卡场景:确保网关仅配置在主网卡上,避免路由冲突。
  5. 备份配置文件:修改前备份,
    sudo cp /etc/network/interfaces /etc/network/interfaces.bak

故障排查

  • 网关不可达
    ping 192.168.1.1 检查网关IP是否响应。
  • 路由表异常
    使用 route -n 检查是否有冲突路由。
  • 服务未启动
    运行 sudo systemctl status networking(或 network)检查服务状态。

引用说明参考Linux官方文档(kernel.org)及主流发行版实践指南(Ubuntu、CentOS Wiki),确保方法经过生产环境验证,配置时请结合自身网络环境调整参数。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/8324.html

(0)
酷番叔酷番叔
上一篇 2025年7月23日 14:27
下一篇 2025年7月23日 14:36

相关推荐

  • Linux下如何开发应用程序?关键步骤与方法详解

    Linux下开发应用程序是一个系统性的过程,涉及环境搭建、语言选择、工具链使用、调试测试及部署等多个环节,无论是系统级程序还是应用级软件,遵循规范的流程能显著提升开发效率与代码质量,以下从实际开发角度详细展开说明,开发环境搭建开发环境是应用程序的“工坊”,需确保基础工具链齐全,通过系统包管理器安装核心编译工具……

    2025年9月25日
    6200
  • Linux如何编辑sh文件?

    在Linux系统中,sh文件(Shell脚本)是常用的自动化脚本文件,通过编辑sh文件可以实现命令的批量执行和复杂操作,编辑sh文件主要涉及文件创建、内容编写、权限设置等步骤,下面详细介绍具体操作方法,编辑前的准备工作在编辑sh文件前,需确认文件是否存在及使用场景,若文件不存在,可通过touch命令创建,例如t……

    2025年9月19日
    8600
  • Linux系统如何切换用户?操作方法有哪些?

    在Linux系统中,多用户特性允许多个用户同时或不同时访问系统资源,每个用户拥有独立的权限和环境配置,切换用户是系统管理中的常见操作,可能用于权限隔离、执行特定任务、排查问题或临时提升权限,Linux提供了多种切换用户的方式,每种方式在权限验证、环境加载和适用场景上存在差异,正确选择切换命令对系统安全和操作效率……

    2025年8月29日
    9000
  • Linux 20G硬盘如何分区?

    在Linux系统中,硬盘分区是系统安装与管理的核心环节,合理的分区方案不仅能提升系统性能,还能增强数据安全性和管理灵活性,对于20GB容量的硬盘,虽然空间有限,但通过科学规划,仍能满足日常办公、开发或轻量级服务器的需求,本文将详细介绍20GB Linux硬盘分区的完整流程,包括分区方案设计、工具选择、操作步骤及……

    2025年8月24日
    7600
  • Linux如何改变GCC编译器的路径配置?

    在Linux系统中,g++作为C++编译器,其路径的查找依赖于系统的环境变量PATH,当需要改变g++的编译路径时,通常是指让系统从非默认路径(如自定义安装目录)找到g++可执行文件,或切换到不同版本的g++,以下是详细操作方法和注意事项,查看当前g++的编译路径在修改路径前,需先确认系统当前识别的g++位置……

    2025年9月28日
    6300

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信