所谓的软件问题,绝大部分就是 IP 参数设定错误啊,路由不对啊,还有 DNS 的 IP 设定错误等等的, 这些问题都是属于软件设定啦!只要将设定改一改,利用一些侦测软件查一查,就知道问题出在哪里了!基本的问题有:

  1. 网络卡的 IP/netmask 设定错误:
    例如:同一个 IP 在同一个网段中出现造成 IP 冲突、子网掩码设定错误、网络卡的驱动程序使用错误、网络卡的 IRQ、 I/O Address 的设定冲突等等;
  2. 路由的问题 (route table):
    最常见的就是预设路由 (default gateway) 设定错误了!或者是路由接口不符所导致的问题, 使得数据封包没有办法顺利的送出去。
  3. 通讯协议不相符:
    最常发生在不同的操作系统之间的通讯传输,例如早期 Windows 98 与 Windows 2000 之间的『网芳』 若要达成沟通,则 Windows 98 必须要加装 NetBEUI 这个通讯协议才行。又例如两部 Linux 主机要透过 NFS 通讯协议传输数据时,两边都得要支持 rpcbind 这个启动 RPC 协议的程序才行! 这些通讯协议我们都会在后面的章节分别介绍的啦!
  4. 网络负荷的问题 (loading):
    当同时有大量的数据封包涌进 Server 或者是 Hub 或者是同一个网域中, 就有可能造成网络的停顿甚至挂点!另外,如果区网内有人使用 BT (P2P 软件) 或者是有人中毒导致蠕虫充满整个区网,也会造成网络的停顿问题;
  5. 其他问题:
    例如:一些 port 被防火墙挡住了,造成无法执行某些网络资源;应用程序本身的 Bug 问题;应用程序中用户的网络设定错误;以及不同的操作系统的兼容性问题等等。

问题的处理

既然问题发生了,就要去处理他啊!那如何处理呢?以上面的星形联机图示为例,把握两个原则:

  • 先由自身的环境侦测起,可以由自身 PC 上的网络卡查起,到网络线、到 Hub 再到调制解调器等等的硬件先检查完。 在这个步骤当中,最好用的软件就是 ping ,而你最好能有两部以上的主机来进行联机的测试;
  • 确定硬件没问题了,再来思考软件的设定问题!

实际上,如果网络不通时,你可以依序这样处理:

  1. 了解问题:这个问题是刚刚发生?还是因为之前我做了什么动作而导致无法联机? 例如之前鸟哥曾经更新过一个核心,结果该核心并不能驱动鸟哥的新网卡...
  2. 确认 IP:先看看自己的网卡有无驱动?能否取得正确的 IP 相关参数来联机?
  3. 确认区网联机:利用 ping 来沟通两部主机 (路由器或 IP 分享器),确定网络线与中继的 hub/switch 工作正常;
  4. 确认对外联机:看主机或 IP 分享器能否依据第四章的方法顺利取得 IP 参数,并以 ping 的方法确定对外联机是可以成功的 (例如 ping 168.95.1.1);
  5. 确认 DNS 查询:利用 nslookup 或 host 或 dig 检查 www.google.com 看看;
  6. 确认 Internet 节点:可以利用 traceroute 检查各节点是否没问题?
  7. 确认对方服务器正常服务:是否对方服务器忙线中?或他的机器挂了?
  8. 确认我方服务器:如果是别人连不上我这部主机,那检查主机某些服务正确启动否?可利用 netstat 检查。或是否某些安全机制的软件没有设定好,例如 SELinux 这项机制;
  9. 防火墙或权限的问题:是否由于权限设定错误所致? 是否由于你的机器有防火墙忘记启用可联机的埠口所致?这个可以透过 tcpdump 来处理!

透过这些处理动作后,一般来说,应该都可以解决你无法上网的问题了!当然啦,如果是硬件的问题, 你可能最需要的是......『送修吧孩子!』

Linux 网络侦错:无法联机原因分析的更多相关文章

  1. Linux/UNIX 下 “command not found” 原因分析及解决

    在使用 Linux/UNIX 时,会经常遇到 "command not found" 的错误,就如提示的信息,Linux /UNIX 没有找到该命令.原因无外乎你命令拼写错误或 L ...

  2. hive on spark:return code 30041 Failed to create Spark client for Spark session原因分析及解决方案探寻

    最近在Hive中使用Spark引擎进行执行时(set hive.execution.engine=spark),经常遇到return code 30041的报错,为了深入探究其原因,阅读了官方issu ...

  3. linux 终端报错 Out of memory: Kill process[PID] [process name] score问题分析

    从Out of memory来看是内存超出了,后面的 Kill process[PID] [process name] score好像和进程有关了,下面我们就一起来看看linux 终端报错 Out o ...

  4. Proxy源代码分析——谈谈如何学习Linux网络编程

    Linux是一个可靠性非常高的操作系统,但是所有用过Linux的朋友都会感觉到, Linux和Windows这样的"傻瓜"操作系统(这里丝毫没有贬低Windows的意思,相反这应该 ...

  5. linux网络协议栈--路由流程分析

    转:http://blog.csdn.net/hsly_support/article/details/8797976 来吧,路由 路由是网络的核心,是linux网络协议栈的核心,我们找个入口进去看看 ...

  6. linux复制,网络报错

    我拷贝了过来的Linux虚拟机无法上网,我用ifconfig命令查询了一下发现只有eth1和lo设备,没有eth0.于是我在Google上搜索了一下, <VMWare克隆或复制Linux虚拟机后 ...

  7. 《Unix/Linux网络日志分析与流量监控》获2015年度最受读者喜爱的IT图书奖

    <Unix/Linux网络日志分析与流量监控>获2015年度最受读者喜爱的IT图书奖.刊登在<中华读书报>( 2015年01月28日 19 版) 我的2015年新作刊登在< ...

  8. 使用VS GDB扩充套件在VS上远端侦错Linux上的C/C++程序

    在 Linux 上开发 C/C++ 程序,或许你会直接(本机或远端)登入 Linux,打开编辑器写完代码后,就用 gcc/g++ 来编译,遇到要除错(debug)的时候,则会选择使用 gdb 来进行除 ...

  9. linux网络子系统内核分析

    1.选择路由 若要将数据包发至PC2,则linux系统通过查询路由表可知168.1.1.10(目的地址)的网关地址为192.168.1.1,此时linux系统选择网卡1发送数据包. 2.邻居子系统(通 ...

随机推荐

  1. Java Web之JSP

    什么是JSP? JSP就是一个可以写Java代码的HTML页面 JSP是什么? JSP是Servlet,JSP的本质就是Servlet Tomcat的web.xml文件下有这样几段代码: 看到下面的通 ...

  2. git status -s命令解析

    git status -s 以精简的方式显示文件状态. git status 输出的命令很详细,但有些繁琐. 如果用 git status -s 或 git status --short 命令,会得到 ...

  3. Web APi入门之Self-Host寄宿及路由原理

    前言 刚开始表面上感觉Web API内容似乎没什么,也就是返回JSON数据,事实上远非我所想,不去研究不知道,其中的水还是比较深,那又如何,一步一个脚印来学习都将迎刃而解. Self-Host 我们知 ...

  4. UEditor js动态创建和textarea中渲染【原】

    UEditor动态创建和textarea中渲染 http://ueditor.baidu.com/website/examples/textareaDemo.html <!DOCTYPE> ...

  5. MySQL mysqldump与source导入慢的解决方法

    Jquery中文网 >  数据库  >  mysql  >  正文 MySQL mysqldump与source导入慢的解决方法 MySQL mysqldump与source导入慢的 ...

  6. Doker安装日志,留个记录而已

    tianye@ubuntu:/usr/share$ wget -qO- https://get.docker.com/ | sh # Executing docker install script, ...

  7. ArcGis 拓扑检查——狭长角锐角代码C#

    中学的时候醉心于研究怎么“逃课”,大学的时候豁然开悟——最牛逼的逃课是准时准地儿去上每一课,却不知到老师讲的啥,“大隐隐于市”大概就是这境界吧. 用到才听说有“余弦定理”这么一个东西,遂感叹“白上了大 ...

  8. oldboys21day03

    # 1.有变量name = "aleX leNb " 完成如下操作:'''name = "aleX leNb "'''# 移除 name 变量对应的值两边的空格 ...

  9. 实惠VPS推荐

    1. Topmain 2. Virmach 3. BanwagonHost  [备用地址1] [备用地址2] 4. HiFormance  (跑路) 5. my.hosteons.com 6. . 以 ...

  10. (9)EvenOddJump

    一.问题描述 一只青蛙从数组(A)的每一个元素向数组尾部跳动.跳动规则如下: 当奇数跳的时候,就是第1.3.5.7....次进行移动时候,移动规则A[i] <= A[j],  并且A[j] = ...