百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

网络故障的检修思路

bigegpt 2024-09-09 01:24 4 浏览

网络问题往往是很独特的,且有时是难以解决的。故障检修要对付一些不希望出现的事情,通常需要的只是掌握概念性的知识, 而不是为配置网络所需的细节的知识。 要想正确、顺利地解决问题,就需要清楚的了解整个局域网,了解网络的布线、电气环境、 TCP/IP 如何在网络上、在单个主机、在协议栈的各层之间为数据选择路由等。对于检修网络,这些是非常重要的。


在检修网络故障的工作中,下面的一些提示是很有用的:

1、不要忽略显而易见的东西。网络电缆松动是很常见的问题,应检查插头、连接器、 电缆、集线器和开关等,小事情可能引起大问题。

2、大多数问题是由人为因素(错误)造成的,通过提供网络配置和作用信息或提供这方面的培训,可以杜绝其中的大部分错误。

3、要注意解决问题的方式方法,应利用每次测试时收集到的信息去指导你的测试,如果不能确保你所选择的原始测试环境,就千万不要根据主观臆断转移到另一个测试环境中。

4. 应广开思路、灵活变通,不要认为问题的原因太多,不要认为在应用程序级发现的问题就不是下一级引起的。 有些人总认为网络有故障, 而另一些人总认为远程端有问题, 某些人如此肯定他们知道问题的原因, 以致不管测试的结果。 千万不要重蹈这些覆辙, 应测试每一种可能的情况,根据测试结果决定你的行动。

5、采用几种简单的故障检修工具。 对于大多数的 TCP/IP 软件问题, 用几种简单的工具就足以解决问题, 花些时间学习如何使用新的检修工具是值得的。 由于很多网络问题的原因都很简单, 因而对问题有一个清晰的了解往往就可能找到答案。 遗憾的是情况并不总这这样! 下面介绍几种简单的工具,可以帮助你去攻克最难解决的问题。


Ping :这个命令工具在 Linux/Unix 、 Dos、 Windows 9x 、 Windows NT 等系统下都可以找到。

这一工具可以测试你的系统是否能到达一台远程的主机, 这一简单的功能对于测试网络的连接是非常有用的, 而与在其中检测到问题的应用程序无关。 Ping 允许你下一步是测试网络连接层 (较低层)还是应用程序层(较高层)。如果 ping 显示分组报文可以到远程系统并返回,用户的问题就可能在较高层中;如果分组报文不能返回传送,那么故障可能在较低的协议层或物理层中。

利用用户的主机名或 IP 地址, 可先对远程主机使用 ping 命令; 如果执行成功, 就由用户对该主机使用 ping 命令;如果也执行成功,那么就应集中精力去分析用户遇到问题的那个应用程序。

如果你的 ping 命令执行成功, 而用户的 ping 命令却失败, 就可以集中测试该用户的系统配置文件,以及将你和用户到该远程主机的路径进行比较,找到它们的不同之处。

如果你和用户的 ping 命令都失败了, ping 命令显示的出错信息是很有帮助的,可以指导你进行下一步的测试计划。以下是几种基本的出错类型: unknow host 该远程主机的名字不能被DNS(域名服务器)转换成 IP 地址, DNS可能出故障、该名字可能是不正确的、你的系统和远程服务器之间的网络可能出毛病。 如果你知道该远程主机的 IP 地址, 可以再试一试 ping 命令。 如果利用它的 IP 地址能达到该主机,问题就可能出在 DNS上。

Network unreachable 本地系统没有到达该远程系统的路由。如果在 ping 命令中使用 IP地址, 则利用主机名重新输入 ping 命令, 这就消除了输入不正确 IP 地址的可能性。 如果使用路由选择协议,一定要确保它正在运行,并使用 nestat 去检查其路由表。

no answer 远程系统没有响应。大多网络实用程序都有不同形式的类似信息,某些系统的ping 命令可打印成 100% packet loss, telnet 打印成 connection timeout 。所有的这些错误信息都说明同一个问题: 本地系统有一条到达远程系统的路由, 但它却接收不到它发给该远程系统的任何分组报文响应。 这种问题的原因有很多, 远程主机可能没有工作、 本地或远程主机可能配置不当、 本地和远程主机之间的线路不正常等等。 只有用其它的方法才可以隔离该问题的原因。


废了一大堆口舌, 终于“ UNPING”的原因道出个头绪来了, 更加高深的我也不懂了, 请多多包涵。下面我们继续看看 ping 上了后它所显示的内容说明了什么。

ping 命令的基本格式是: ping host [packetsize][count] (不同的系统,格式略有不同)host 是被测试远程主机的主机名或 IP 地址。 Packetsize 是可选项,定义测试分组报文的长度(Byte ),只有在使用 count 字段是才使用。 却省的分组长度是 56Byte ,count 是测试时发送的分组数。 Count 一般设置为较低值,一般设为 4 或 5 就可以了。

测试从 Link 上能否到达 ly ,用以下命令: C:>ping ly Pinging ly [222.222.222.15] with 32 bytes of data:Reply from 222.222.222.15:bytes=32 time=1ms TTL=128

Reply from 222.222.222.15:bytes=32 time=1ms TTL=128

Reply from 222.222.222.15:bytes=32 time=1ms TTL=128

Reply from 222.222.222.15:bytes=32 time=1ms TTL=128

Ping statistics for 222.222.222.15:

Packets:Sent = 4, Received = 4, Lost = 0 ( 0% loss ) ,

Approximate round trip times in milli-seconds:

Minimun = 1ms, Maximum = 1ms, Average = 1ms 该测试表明 link 到 ly 的连接非常正常,没有丢失分组,响应很快。在 link 到 ly 之间的往返平均只需 1 毫秒。对于局域网的连接,分组丢失越少和往返时间越小则越正常。 TTL( Time To Live ) =128。该 ping 命令显示的统计信息可以指出下一级的网络问题。 其关键的统计信息是: * 一个分组往返传送需要多长时间, 它显示在 time= 之后。

* 分组丢失的百分比。它显示在 ping 输出结束处的总统计行中。

* 分组到达的次序。如每个分组的 ICMP 序号( icmp_seq )。

如果分组丢失率高、 响应时间非常慢, 或者各分组不按次序到达, 那么就有可能是硬件有毛病;当然,如果这些情况发生广域网上就不必担心太多。

在本地网络中, 其往返时间约等于 1 毫秒,几乎或完全没有分组丢失, 各分组应按次序到达。

如果不是这样, 那么网络硬件就有问题。 在以太网中可能是由于: 不合适的电缆端接 (终端电阻)、不良电缆、不良的有源硬件( Hub等)。首先要检查电缆的端接, It's so easy ,看看有没有终端电阻。 这是一个最常见最简单的检测电缆的方法是用一个万用表测量某一端口的电阻值。 如果测得端口电阻为零,说明电缆短路,为无穷大则断路, 50 欧左右说明有一个终端电阻脱落,正常应在 25 欧左右。

一个简单的 ping 测试的结果,即使该测试顺利通过,也能指导你做进一步的测试,帮助你找到最可能发生问题的地方。 但是要深入检查问题, 并找到潜在的原因, 还需要其它的诊断工具。

最后再简单介绍几个有用的工具: netstat 可提供各种各样的信息, 通常用来显示每个网络接口、网络插口、网络路由表等的详细统计资料。

arp 提供有关以太网 IP 地址转换的信息, 它可以用来检测本地网络中, 用错误的 IP 地址配置的系统。

Ifconfig 提供接口的基本配置信息。 它对于检测不正确的 IP 地址、 子网掩码和广播地址是很有用的。

相关推荐

Java 泛型大揭秘:类型参数、通配符与最佳实践

引言在编程世界中,代码的可重用性和可维护性是至关重要的。为了实现这些目标,Java5引入了一种名为泛型(Generics)的强大功能。本文将详细介绍Java泛型的概念、优势和局限性,以及如何在...

K8s 的标签与选择器:流畅运维的秘诀

在Kubernetes的世界里,**标签(Label)和选择器(Selector)**并不是最炫酷的技术,但却是贯穿整个集群管理与运维流程的核心机制。正是它们让复杂的资源调度、查询、自动化运维变得...

哈希Hash算法:原理、应用(哈希算法 知乎)

原作者:Linux教程,原文地址:「链接」什么是哈希算法?哈希算法(HashAlgorithm),又称为散列算法或杂凑算法,是一种将任意长度的数据输入转换为固定长度输出值的数学函数。其输出结果通常被...

C#学习:基于LLM的简历评估程序(c# 简历)

前言在pocketflow的例子中看到了一个基于LLM的简历评估程序的例子,感觉还挺好玩的,为了练习一下C#,我最近使用C#重写了一个。准备不同的简历:image-20250528183949844查...

55顺位,砍41+14+3!季后赛也成得分王,难道他也是一名球星?

雷霆队最不可思议的新星:一个55号秀的疯狂逆袭!你是不是也觉得NBA最底层的55号秀,就只能当饮水机管理员?今年的55号秀阿龙·威金斯恐怕要打破你的认知了!常规赛阶段,这位二轮秀就像开了窍的天才,直接...

5分钟读懂C#字典对象(c# 字典获取值)

什么是字典对象在C#中,使用Dictionary类来管理由键值对组成的集合,这类集合被称为字典。字典最大的特点就是能够根据键来快速查找集合中的值,其键的定义不能重复,具有唯一性,相当于数组索引值,字典...

c#窗体传值(c# 跨窗体传递数据)

在WinForm编程中我们经常需要进行俩个窗体间的传值。下面我给出了两种方法,来实现传值一、在输入数据的界面中定义一个属性,供接受数据的窗体使用1、子窗体usingSystem;usingSyst...

C#入门篇章—委托(c#委托的理解)

C#委托1.委托的定义和使用委托的作用:如果要把方法作为函数来进行传递的话,就要用到委托。委托是一个类型,这个类型可以赋值一个方法的引用。C#的委托通过delegate关键字来声明。声明委托的...

C#.NET in、out、ref详解(c#.net framework)

简介在C#中,in、ref和out是用于修改方法参数传递方式的关键字,它们决定了参数是按值传递还是按引用传递,以及参数是否必须在传递前初始化。基本语义对比修饰符传递方式可读写性必须初始化调用...

C#广义表(广义表headtail)

在C#中,广义表(GeneralizedList)是一种特殊的数据结构,它是线性表的推广。广义表可以包含单个元素(称为原子),也可以包含另一个广义表(称为子表)。以下是一个简单的C#广义表示例代...

「C#.NET 拾遗补漏」04:你必须知道的反射

阅读本文大概需要3分钟。通常,反射用于动态获取对象的类型、属性和方法等信息。今天带你玩转反射,来汇总一下反射的各种常见操作,捡漏看看有没有你不知道的。获取类型的成员Type类的GetMembe...

C#启动外部程序的问题(c#怎么启动)

IT&OT的深度融合是智能制造的基石。本公众号将聚焦于PLC编程与上位机开发。除理论知识外,也会结合我们团队在开发过程中遇到的具体问题介绍一些项目经验。在使用C#开发上位机时,有时会需要启动外部的一些...

全网最狠C#面试拷问:这20道题没答出来,别说你懂.NET!

在竞争激烈的C#开发岗位求职过程中,面试是必经的一道关卡。而一场高质量的面试,不仅能筛选出真正掌握C#和.NET技术精髓的人才,也能让求职者对自身技术水平有更清晰的认知。今天,就为大家精心准备了20道...

C#匿名方法(c#匿名方法与匿名类)

C#中的匿名方法是一种没有名称只有主体的方法,它提供了一种传递代码块作为委托参数的技术。以下是关于C#匿名方法的一些重要特点和用法:特点省略参数列表:使用匿名方法可省略参数列表,这意味着匿名方法...

C# Windows窗体(.Net Framework)知识总结

Windows窗体可大致分为Form窗体和MDI窗体,Form窗体没什么好细说的,知识点总结都在思维导图里面了,下文将围绕MDI窗体来讲述。MDI(MultipleDocumentInterfac...