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

解决阿里云轻量级服务器 Ubuntu 24.04.1 LTS 没网也 ping 不通 8.8.8.8 以及 route -n 没有输出任何转发信息

事情发生在两天前,位于公网的阿里云轻量级服务器(Ubuntu 24.04.1 LTS)忽然没网。主要是上次上服务器进行配置已经是一个多月前,最近也没有做什么事情,就忽然没网了,让人纳闷。更主要的是,上次备份是一个多月前,如果回滚,最近一个月上传的数据将会丢失。最后,花了三个小时,终于解决了问题。

一、故障现象

在当前故障状态下打了个备份,回滚到上一次可以联网的状态进行分析。对比发现,主要有以下几个故障现象。

(一)ping 不通

发现在自己电脑尝试使用 ssh、https 等协议访问服务器不同的端口都无法访问,ping 也 ping 不进去。在阿里云救援连接下执行 ping www.baidu.com 不通,执行 ping 8.8.8.8 也不通。感觉就是完全没网。

(二)执行 ifconfig 只有 lo 没有 eth0

回滚了一下以前的版本,发现可以联网,执行 ifconfig,显示如下(具体 IP 地址用 X 进行了代替)。

root@Universe:~# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet XXX.XXX.XXX.XXX  netmask XXX.XXX.XXX.XXX  broadcast XXX.XXX.XXX.XXXinet6 XXXX:XXXX:XXXX:XXXX:XXXX  prefixlen 64  scopeid 0x20<link>ether 00:16:3e:0c:12:69  txqueuelen 1000  (Ethernet)RX packets 1759  bytes 194870 (194.8 KB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 1826  bytes 1352244 (1.3 MB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536inet 127.0.0.1  netmask 255.0.0.0inet6 ::1  prefixlen 128  scopeid 0x10<host>loop  txqueuelen 1000  (Local Loopback)RX packets 332540  bytes 27292720 (27.2 MB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 332540  bytes 27292720 (27.2 MB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

在当前故障状态下,执行 ifconfig,显示如下,没有 eth0。

root@Universe:~# ifconfig
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536inet 127.0.0.1  netmask 255.0.0.0inet6 ::1  prefixlen 128  scopeid 0x10<host>loop  txqueuelen 1000  (Local Loopback)RX packets 332540  bytes 27292720 (27.2 MB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 332540  bytes 27292720 (27.2 MB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

(三)执行 route -n 没有任何信息

回滚到可以联网的版本时,执行 route -n 是有数据的(用 X 替换了真实 IP)。

root@Universe:~# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         XXX.XXX.XXX.XXX   0.0.0.0         UG    100    0        0 eth0
XXX.XXX.XXX.XXX   XXX.XXX.XXX.XXX   255.255.255.255 UGH   100    0        0 eth0
XXX.XXX.XXX.XXX   XXX.XXX.XXX.XXX   255.255.255.255 UGH   100    0        0 eth0
XXX.XXX.XXX.XXX      0.0.0.0         255.255.192.0   U     100    0        0 eth0
XXX.XXX.XXX.XXX   0.0.0.0         255.255.255.255 UH    100    0        0 eth0

故障状态下,执行 route -n,没有有效数据。

root@Universe:~# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

(四)阿里云控制台诊断未发现异常

诊断

二、分析与尝试

(一)从 ping 下手

如果只是 ping www.baidu.com 失败而 ping 8.8.8.8 成功,那应该是 DNS 问题,解决这个问题,网上教程有很多。但是,根据故障现象(一)可以知道,连 8.8.8.8 都 ping 不通,那肯定不(只)是 DNS 的问题。笔者也试了一下当成 DNS 问题进行解决,但服务器依旧无法连接上。
百度和谷歌搜索 ping temporary failure in name resolution 和 ping connect network is unreachable 了半天,说要修改 /etc/resolv.conf,添加 8.8.8.88.8.4.4,但对比了一下之前正常联网的文件,发现该文件没有变化,所以应该不用修改。事实上,笔者尝试过修改,无济于事。

root@Universe:~# cat /etc/resolv.conf
# This is /run/systemd/resolve/stub-resolv.conf managed by man:systemd-resolved(8).
# Do not edit.
#
# This file might be symlinked as /etc/resolv.conf. If you're looking at
# /etc/resolv.conf and seeing this text, you have followed the symlink.
#
# This is a dynamic resolv.conf file for connecting local clients to the
# internal DNS stub resolver of systemd-resolved. This file lists all
# configured search domains.
#
# Run "resolvectl status" to see details about the uplink DNS servers
# currently in use.
#
# Third party programs should typically not access this file directly, but only
# through the symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a
# different way, replace this symlink by a static file or a different symlink.
#
# See man:systemd-resolved.service(8) for details about the supported modes of
# operation for /etc/resolv.conf.nameserver 127.0.0.53
options edns0 trust-ad
search .

(二)搜索其它相关解决方案(可能对其它网络问题有用可逐个尝试)

  1. 修改 /etc/sysconfig/network-script 下的配置文件,发现 cd 到这个目录时提示目录不存在;
  2. 使用 Network-Manager、networkmanger、nmcli、netset 等工具和 service XXX restart 等命令重启网络管理器,均提示不存在或服务未安装,检查发现正常状态下也没有装过这些东西,所以,尝试 apt 安装,想啥呢,没网啊;
  3. 使用 /etc/init.d/networking,提示没有这个文件(怎么什么都没有);
  4. 见得最多的是 /etc/network/interfaces,cd 过去,哦吼,又没有这个文件夹;
  5. GPT 说从 Ubuntu 17 开始,/etc/network/interfaces 变成了 netplan,比较了下故障状态下和正常状态下的配置,发现 /etc/netplan 下多了个 yaml 文件,于是删除了多余的 yaml 文件,只留下了 50-cloud-init.yaml,不过还是不行,但这个更改还是做了吧,毕竟和以前正常状态下的保持一致一般没错;
  6. 设置默认网关,主要是笔者在当前阶段执行 ifconfig 连 eth0 都没有,所以执行 route add default gw 自然失败,但这最后助攻了一手。

(三)从 ifconfig 执行

既然没有 eth0,那就执行
ipconfig eth0 up。启动 eth0 网卡后,再次执行 ifconfig,有 eth0 了,但是没有 inet,显示如下。

root@Universe:~# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet6 XXXX:XXXX:XXXX:XXXX:XXXX  prefixlen 64  scopeid 0x20<link>ether 00:16:3e:0c:12:69  txqueuelen 1000  (Ethernet)RX packets 1759  bytes 194870 (194.8 KB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 1826  bytes 1352244 (1.3 MB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536inet 127.0.0.1  netmask 255.0.0.0inet6 ::1  prefixlen 128  scopeid 0x10<host>loop  txqueuelen 1000  (Local Loopback)RX packets 332540  bytes 27292720 (27.2 MB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 332540  bytes 27292720 (27.2 MB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

于是,根据之前的地址,执行了 ifconfig eth0 XXX.XXX.XXX.XXX netmask XXX.XXX.XXX.XXX。再次执行 ifconfig,发现除了 RX 和 TX 之外,故障状态下和正常联网状态下的输出没有什么不同。感觉 eth0 转发的数据应该要比 lo 的多得多,而故障状态下的服务器并非如此,于是尝试在谷歌和百度上搜索这个问题,没搜索到结果,可能是表达问题。最后,想了想,应该是要把默认网卡切为 eth0,依照此思路执行了 route add default gw XXX.XXX.XXX.XXX eth0(这里的 XXX.XXX.XXX.XXX 对应上文 gateway 下面的地址)。忽然,一切问题得到了解决。

解决方案

执行 ifconfig eth0 up 把网关启用回来,然后执行 ifconfig eth0 XXX.XXX.XXX.XXX netmask XXX.XXX.XXX.XXX 把网卡 eth0 加回来,最后用 route add default gw XXX.XXX.XXX.XXX eth0 设置默认网关,结束。

相关文章:

解决阿里云轻量级服务器 Ubuntu 24.04.1 LTS 没网也 ping 不通 8.8.8.8 以及 route -n 没有输出任何转发信息

事情发生在两天前&#xff0c;位于公网的阿里云轻量级服务器&#xff08;Ubuntu 24.04.1 LTS&#xff09;忽然没网。主要是上次上服务器进行配置已经是一个多月前&#xff0c;最近也没有做什么事情&#xff0c;就忽然没网了&#xff0c;让人纳闷。更主要的是&#xff0c;上次备…...

跨域问题及其解决方案

跨域问题及其解决方案 在Web开发中&#xff0c;跨域问题是一个常见的安全限制&#xff0c;它涉及到浏览器的同源策略&#xff08;Same-Origin Policy&#xff09;。本文将详细解释跨域问题的原因、影响以及几种常见的解决方案&#xff0c;并提供在Java中的实现方法。 目录 跨…...

在CentOS中安装和卸载mysql

在CentOS7中安装和卸载mysql 卸载mysql1、查看是否安装过mysql2、查看mysql服务状态3、关闭mysql服务4、卸载mysql相关的rpm程序5、删除mysql相关的文件6、删除mysql的配置文件my.cnf 安装mysql1、下载mysql相关的rpm程序2、检查/tmp临时目录权限3、安装mysql前的依赖检查3、安…...

React简单入门 - [Next.js项目] - 页面跳转、AntD组件、二级目录等

须知 1Next.js 官网(英文)https://nextjs.org/2Next.js 文档(中文)https://nextjscn.org/docs/3Ant Design组件总览https://ant-design.antgroup.com/components/overview-cn4tailwindcss类名大全 官网https://www.tailwindcss.cn/docs/justify-content 5tailwindcss常用类…...

Redis安装和Python练习(Windows11 + Python3.X + Pycharm社区版)

环境 Windows11 Python3.X Pycharm社区版 思路 1 github下载redis压缩包 &#xff0c;安装并启动redis服务&#xff0c;在客户端连接redis服务。 2 在pycharm中运行python程序&#xff0c;连接redis服务&#xff0c;熟悉redis的使用和巩固python语言。 3 python开发环境…...

Sqoop脚本编写(Mysql---->>hdfs)

目录 语法手册编写方式脚本文件类型文件编写.jar路径指定 执行效果执行方式效果 语法手册 参考博客 编写方式 脚本文件类型 只要是可读的文件即可&#xff08;.txt或者.sh等其他类型&#xff0c;不带文件后缀也可以&#xff0c;但二进制文件最好不要&#xff09; 文件编写…...

帝可得项目redis连接不上

首先我一切配置都没问题&#xff1a; 1. redis-server启动 2. 可视化界面显示redis已连接 原因&#xff1a; 不知道是不是因为不同版本的问题(因为我之前的sky就没这个问题) 这里把password改成auth就可以了...

JS中this的值详细讲解以及面试指向练习

this 的值取决于它出现的上下文&#xff1a;函数、类或全局。 在函数内部&#xff0c;this 的值取决于函数如何被调用&#xff0c;this 是语言在函数体被执行时为你创建的绑定 对于典型的函数&#xff0c;this 的值是函数被访问的对象。换句话说&#xff0c;如果函数调用的形…...

显示浮动式窗口的方法

文章目录 1 概念介绍2 使用方法3 示例代码我们在上一章回中介绍了AlertDialog Widget相关的内容,本章回中将介绍BottomSheet Widget.闲话休提,让我们一起Talk Flutter吧。 1 概念介绍 我们在这里说的BottomSheet是一种弹出式窗口,和上一章回中介绍的AlertDialog类似,但是也…...

FireFox火狐浏览器企业策略禁止更新

一直在用火狐浏览器&#xff0c;但是经常提示更新&#xff0c;进入浏览器右上角就弹出提示&#xff0c;比较烦。多方寻找&#xff0c;一直没有找到合适的方案&#xff0c;毕竟官方没有给出禁用检查更新的选项&#xff0c;甚至about:config里都没有。 最终找到了通过企业策略控…...

C++类的运算符重载

目标 让自定义的类直接使用运算符运算 代码 头文件及类定义 #include <iostream>using namespace std; class Complex {int rel;int vir; public:void show(){cout <<"("<<this->rel<<","<<this->vir<<&quo…...

泷羽Sec学习笔记-zmap搭建炮台

zmap搭建炮台 zmap扫描环境&#xff1a;kali-linux 先更新软件库 sudo apt update 下载zmap sudo apt install zmap 开始扫描(需要root权限) sudo zmap -p 80 -o raw_ips.txt 代码解析&#xff1a; sudo&#xff1a;以超级用户&#xff08;管理员&#xff09;权限运行…...

分析M0G突破后急剧下跌内因,x.game阐述不利面延续多久

MOG最新消息显示&#xff0c;美国唐纳德-的一则声明公开表示支持一种基于以太坊网络ERC-20代币标准的病毒式meme代币——Mog Coin&#xff08;MOG&#xff09;&#xff0c;这一消息迅速发酵。然而&#xff0c;令人意想不到的是&#xff0c;在这位全球知名政治人物的背书之后&am…...

网络爬虫全解析

一、网络爬虫基础要点 &#xff08;一&#xff09;爬虫原理 目标确定&#xff1a;明确需要抓取数据的网站或网页范围&#xff0c;例如针对特定电商平台抓取商品信息&#xff0c;或聚焦新闻网站获取新闻报道内容&#xff0c;要考量数据的价值与用途。URL 解析&#xff1a;理解网…...

《孤岛惊魂4》无法启动提示缺少“msvcp100.dll”快速修复方法!

《孤岛惊魂4》缺少msvcp100.dll的解决之道 在探索《孤岛惊魂4》这款充满惊险与刺激的射击游戏时&#xff0c;玩家可能会遇到一些意外的障碍&#xff0c;其中之一便是“缺少msvcp100.dll”的错误提示。这个错误不仅让游戏无法正常启动&#xff0c;还可能让玩家对游戏的热情大打…...

GS-SLAM论文阅读--RGBDS-SLAM

前言 最近GS-SLAM领域的工作层出不穷&#xff0c;有很多不错的工作出现。接下来慢慢写一下相关博客。 文章目录 前言1.背景介绍2.关键内容2.1 3D多层次金字塔高斯喷溅2.2 紧密耦合多特征重构优化2.3总体流程 3.文章贡献4.个人思考 1.背景介绍 高保真重建是密集SLAM的关键。最…...

条件编译->enable_if和 if constexpr使用区别

enable_if 和 if constexpr 是 C 中用于控制编译或运行时条件的重要工具&#xff0c;它们各有不同的用途和使用场景。以下是它们的主要区别&#xff1a; 1. enable_if std::enable_if 是一个类型特征&#xff0c;用于在编译时根据条件选择类型。常用于模板元编程&#xff0c;…...

介绍一下CSS中伪类和伪元素的概念

一、伪类&#xff08;Pseudo - Classes&#xff09; 1. 定义 伪类是添加到选择器的关键字&#xff0c;用于定义元素的特殊状态。这些状态不是由文档树中的结构或属性来表示&#xff0c;而是基于用户行为&#xff08;如鼠标悬停&#xff09;、元素状态&#xff08;如被选中&am…...

【橘子ES】熔断器Circuit breaker

一、相关概念 我们在日常的开发中&#xff0c;关于服务之间的熔断操作似乎很常见&#xff0c;当请求超过了我们服务所认为可以承受的一个上限阈值的时候&#xff0c;我们为了保护服务不会被进一步的高负载压崩溃&#xff0c;我们有时候会选择熔断请求&#xff0c;此时服务不再…...

6.4 CPU性能分析--Intel处理器跟踪技术

Intel处理器跟踪PT技术是记录程序执行过程的技术&#xff0c;它把记录信息编码报文存到高压缩率的二进制文件中。该二进制文件结合每条指令的时间戳重建执行流。PT技术覆盖度大&#xff0c;开销小&#xff0c;有关开销的信息详见&#xff0c;主要用于性能问题的事后分析和根因定…...

EcomGPT-7B模型蒸馏实践:训练更轻量的小模型服务于高并发场景

EcomGPT-7B模型蒸馏实践&#xff1a;训练更轻量的小模型服务于高并发场景 你是不是也遇到过这样的烦恼&#xff1f;手里有一个像EcomGPT-7B这样的大模型&#xff0c;它在电商场景下回答问题、生成文案的效果确实不错&#xff0c;但一到像“双十一”这样的大促节点&#xff0c;…...

AI编程专栏(三) - Cursor 高级技巧与实战优化

1. Cursor高级功能深度解析 第一次接触Cursor时&#xff0c;你可能觉得它就是个带AI的代码编辑器。但当我真正用它完成一个企业级项目后&#xff0c;才发现那些藏在深处的功能才是真正的生产力神器。比如最近在重构一个老旧的React项目时&#xff0c;通过合理使用MCP协议&#…...

造相Z-Image文生图模型快速试用:10秒生成高清图片,简单易用

造相Z-Image文生图模型快速试用&#xff1a;10秒生成高清图片&#xff0c;简单易用 1. 快速体验&#xff1a;10秒生成你的第一张AI画作 1.1 一键部署模型 在CSDN星图镜像市场找到"造相 Z-Image 文生图模型&#xff08;内置模型版&#xff09;v2"镜像&#xff0c;点…...

【具身智能07】具身智能世界模型与端到端架构:从看见到理解物理规律

07_具身智能世界模型与端到端架构 关键词 世界模型,端到端架构,VLA模型,DreamerV3,RoboCat,WALL-A,云边端协同,系统012架构,多时间尺度预测,因果推理一、引言:从反应式感知到预测式认知的范式转变 2024年之前,具身智能的主流是"感知-行动"反应式回路——机器人看到杯…...

AsyncAPI消息版本兼容性终极指南:如何优雅处理API变更

AsyncAPI消息版本兼容性终极指南&#xff1a;如何优雅处理API变更 【免费下载链接】spec The AsyncAPI specification allows you to create machine-readable definitions of your asynchronous APIs. 项目地址: https://gitcode.com/gh_mirrors/spec/spec AsyncAPI是描…...

DownKyi:B站视频高效解决方案——如何三步搞定8K资源本地化管理

DownKyi&#xff1a;B站视频高效解决方案——如何三步搞定8K资源本地化管理 【免费下载链接】downkyi 哔哩下载姬downkyi&#xff0c;哔哩哔哩网站视频下载工具&#xff0c;支持批量下载&#xff0c;支持8K、HDR、杜比视界&#xff0c;提供工具箱&#xff08;音视频提取、去水印…...

【多模态实战】Swift框架高效微调Qwen2-VL:从SFT到RLHF的完整指南

1. 为什么选择Swift框架微调Qwen2-VL 第一次接触Qwen2-VL这个多模态大模型时&#xff0c;我被它强大的图文理解能力惊艳到了。但真正让我惊喜的是发现Swift框架能让模型微调变得如此简单。记得当时为了测试一个定制化需求&#xff0c;传统方法需要写上百行训练代码&#xff0c;…...

探索Rufus全新应用场景:为老旧设备注入Windows 11新生命

探索Rufus全新应用场景&#xff1a;为老旧设备注入Windows 11新生命 【免费下载链接】rufus The Reliable USB Formatting Utility 项目地址: https://gitcode.com/GitHub_Trending/ru/rufus 还在为Windows 11严格的硬件要求而烦恼吗&#xff1f;你的旧电脑完全可以运行…...

Vivado项目文件太多分不清?这份FPGA开发必备的“文件后缀速查手册”请收好

Vivado项目文件管理实战指南&#xff1a;从混乱到有序的FPGA开发进阶 每次打开Vivado项目文件夹&#xff0c;看到满屏的.bat、.dcp、.xci文件是不是感觉像走进了一个迷宫&#xff1f;作为FPGA开发者&#xff0c;我们经常需要在这些看似杂乱的文件海洋中寻找特定的配置或输出结果…...

绿盾加密环境下Keil安装避坑指南:从ST-LINK报错到安全模式切换

绿盾加密环境下Keil安装全流程解析&#xff1a;从驱动修复到开发环境优化 在嵌入式开发领域&#xff0c;Keil MDK作为ARM架构微控制器的主流开发工具&#xff0c;其稳定性直接关系到项目进度和开发体验。但当企业级文档加密系统"绿盾"介入后&#xff0c;原本顺畅的开…...