> 操作系统 > 正文
Linux系统网络连接常见问题诊断 即使按照Linux系统的操作说明书一步步的对网络进行设置,仍然有可能出现无法顺利联网的情况。这主要是因为网络配置是一件相当复杂的事情。
即使按照Linux系统的操作说明书一步步的对网络进行设置,仍然有可能出现无法顺利联网的情况。这主要是因为网络配置是一件相当复杂的事情。当网络出现问题时,有时候经验可能比技术更加有用。Linux操作系统无法上网的原因有很多种。笔者这里就列举一些常见的网络故障以及解决措施,帮助Linux系统管理员迅速定位网络错误并及时恢复网络正常运行。 第一招:利用Ipconfig命令判断网卡基本配置。 当操作系统无法正常上网时,Linux系统管理员首选要做的就是要检查网卡当前的配置是否准确。利用Ipconfig命令可以帮助系统管理员确认网卡的当面配置。如下图是IPconfig命令显示结果的部份截图。那么该如何判断这个显示结果是否正常呢?笔者提一些思路供大家参看。
插图1:IPconfig命令图。 1、如果企业采取的是动态分配IP地址的话,那么管理员首先要判断这台Liunxu主机有没有从DHCP服务器那边获得IP地址。这主要看网卡当前的IP地址是否与DHCP服务器规划的IP网段相同。如果Linux主机不能够连接到DHCP服务器或者不能够从它那里获得IP地址(如DHCP服务器地址已经使用完了),则这里显示的IP地址往往为0.0.0.0.若出现这种情况,则系统管理员就需要检查这台网卡与DHCP服务器之间的连接了。或者查询一下DHCP服务器IP地址池的使用情况。 2、判断当前的网路参数设置是否准确。通常情况下,如果采用的是自动分配IP地址的话,那么这个地址只要取得了,一般不会错误。如果有错的话,那么是整个局域网内的主机都将无法上网。但是如果是手工配置IP地址的话,则很有可能配置错误。为此如果如果是自动分配IP地址的话,则只需要检查是否从DHCP服务器那边获取了网络参数即可。但是如果是手工分配的话,则还需要判断这些参数是否准确。主要是检查IP地址、子网掩码、默认网关、DNS配置这四个参数。这是最容易出现错误地方。特别是IP地址,它要注意是否跟当前的其他主机IP地址有冲突;还需要注意是否在规定的网段内,等等。 3、另外,有时候管理员运气会比较备,可能会遇到网卡没有正常启动的情况(如遇到没有正确安装网卡驱动或者网卡被暂时停用)。此时网络管理员往往需要手工重新启动网卡。若需要手工重新启动网卡,就需要采用/etc/rc.d/init.d/network restart这条命令来启动。这条命令是告诉Linux系统重新启动所有的网络接口。这条命令运行完毕以后,再次执行Ifconfig命令,来看看网卡是否正常启动。如果依旧无法启动的话,那么Linux系统管理员就需要考虑一下是否是网卡或者主版的硬件故障问题。可以重新插拔一下网卡或者换一张网卡试试。 另外对这两个命令还需要说明两点。一是ifconfig命令的作用跟Windows下面的命令作作用类似,但是用法略有不同。在Windows系统下,ifconifg命令有一个ALL选项,它表示显示详细的IP配置信息。在使用这个命令的时候,如果不带上参数,则只显示IP地址、子网掩码等信息,但是如果带上这个参数的话,则同时还会显示DNS等信息。这在使用过程中需要特别的留心。而在Linux下,这个命令没有这个参数,直接显示详细的IP配置信息。二是网卡重新启动的命令需要有一定的权限,如root权限等等。否则的话,会被系统拒绝。 第二招:利用Ping命令。 如果利用ipconfig命令查看网络基本参数都正确无误,但是还是无法正常连上网路的话,则就需要利用ping命令来进行网络连通性测试。如可以利用ping网关地址的形式来判断主机与网关之间的连接是否存在问题。也可以利用这个命令来测试跟局域网内其他主机的连通性问题。不过在使用这个命令的时候,需要注意跟Windows系统下的异同。 在Windows下,如果利用Ping命令测试跟其他主机的连通性的话,则默认情况下只会显示四条记录信息。如果要让其一直显示的话,就需要加入一个参数t。即PING 192.168.0.254 Ct。不过在Linux系统下则不同。如果在Linu系统下采用这个命令的话,则其默认情况下会一直对远程主机发送数据包来测试连通性。这跟Windows环境下默认情况下只发送四个数据包不同。如果要终止Linux系统向原发主机发送数据包的话,就需要手工停止。主要是利用Ctrl键与键盘字母C键来停止这个命令。 如果这个命令提示错误信息,那么就有两种可能。一是跟远程主机的连接存在问题。如采用的是固定分配IP地址而采用上面这个命令查看网卡信息配置准确的话,则很有可能是连接的网线有问题或者中间的网络设备的问题。通常情况下,需要多测试几台主机来判断问题的故障点在哪里。二是需要注意,有时候出于安全的考虑,网络管理员会对一些重要的设备进行配置,拒绝其他主机对其进行Ping操作。这主要是为了杜绝Ping攻击。ping 攻击是通过TCP的基本原理来实现的。由于TCP/IP的设计原理使用的是ACK模式,所以客户机给目标主机发送一个PING,目标主机会回应这个请求,以达到其测试连接性的目的。ICMP协议是因特网控制消息错误报文协议,使用ICMP攻击的原理实际上就是通过Ping大量的数据包使得计算机的CPU使用率居高不下而崩溃,一般情况下黑客通常在一个时段内连续向计算机发出大量请求而导致CPU占用率太高而死机。故为了网络设备的安全,往往会通过防火墙或者IP安全策略等手段,让关键网络设备不对他人的Ping命令做出反应。此时在发出命令方就会显示Ping错误。为此,这里需要注意,如果Ping不通的话,并不真的代表网络不同。系统管理员需要知道有上面这种情况的可能性。 第三招:确认网关、DNS是否正常。 如果通过上面两个步骤仍然不能够解决网络故障,或者说可以Ping通其他主机但是不能够打开网页的话,那么系统管理员就需要进行这个步骤,确认网关或者DNS是否存在问题。网关就是一个网络连接到另一个网络的关口。在互联网中,网关是一种连接内部网与互联网上其它网段的中间设备。有多种设备可以充当网关如“路由器”等等。网关地址是可以理解为内部网与互联网信息传输的通道地址。按照不同的分类标准,网关也有很多种。TCP/IP协议里的网关是最常用的,在这里我们所讲的“网关”均指TCP/IP协议下的网关。所以,有时候弱国局域网内各个主机可以正常通信,但是无法连接到互联网时很可能是因为网关配置错误问题。 那么如何侧测试网关配置是否准确呢?笔者这里做一些简单的介绍。如果企业中有自动分配IP地址的DHCP服务器,而现在是一台固定IP地址的客户端出现联网故障,则此可以先把IP地址改为自动获得,让其自动从DHCP服务器中获取相关的IP参数。此时如果能够正常上网的话,则说明很可能是因为手工配置IP参数时网关设置错误所造成的(如设置前可以访问局域网内部的主机而不能够访问互联网)。此时Linux系统管理员就需要查看原先的网关配置是否准确。如果故障客户端本身就采用的是自动分配IP地址的话,则可以采用Ping网关地址的方法,来判断故障客户端跟网关之间是否存在连接方面的故障。如果此时仍然Ping不同网关地址的话,则Linux系统管理员就需要考虑是否是故障客户端与网关之间存在着硬件方面的故障,如网线问题或者中间的网络设备问题等等。Linux管理员可以依据这个思路去考虑问题。 如果故障客户端可以Ping通网关,也可以Ping公网IP地址,但是仍然无法打开网页的话,则系统管理员就要怀疑是否是DNS服务器有问题。如果要判断网络访问故障是否是因为DNS服务器所造成的,那么就需要采用PING 网页地址的方式,如ping 的方式。如果可以ping的通的话,那么就说明DNS没问题,网络没什么故障。很有可能是故障客户端的浏览器有问题。如果这个通的话,那就说明DNS配置有错误了。如果企业是自动获取DNS配置的话,那就需要打电话请教互联网服务提供商了。不过是手工配置的,那么就检查一下配置的准确性。此时,大部分情况下应该是手工配置出错所导致的。互联网上DNS服务器一般不怎么会出问题。
2009-03-17 15:06:18 来源: 编辑:中国软件网 作者: 评论: