IT猫扑网:您身边最放心的安全下载站! 最新更新| 软件分类| 专题汇总| 手机版

您当前所在位置:IT猫扑网 > 系统集成 > 网络故障 > 实时监测网络是否断线的几种办法

实时监测网络是否断线的几种办法

时间:2015-06-28 00:00 来源:IT猫扑网|http://www.itmop.com/ 作者:网管联盟 我要评论(0)

  相信现在很多公司或网吧开始考虑双线接入,来实现网络的均衡负载或冗余(备份)线路,保持网络的不间断性。但是如何才能检测某条线路断了呢?有以下几种办法:

  1. 物理连接中断(比如网线出现问题)

  这个可以通过SNMP来检测(需要现安装 net-snmp 包),如下:

  先查看各网卡的设备描述编号:

  # snmpwalk -v 1 -c public localhost|grep ifDescr

  IF-MIB::ifDescr.1 = STRING: lo

  IF-MIB::ifDescr.2 = STRING: dummy0

  IF-MIB::ifDescr.3 = STRING: eth0

  IF-MIB::ifDescr.4 = STRING: eth1

  IF-MIB::ifDescr.5 = STRING: tunl0

  IF-MIB::ifDescr.6 = STRING: gre

  上面显示 eth0 的编号是3

  查看 eth0 的状态:

  # snmpwalk -v 1 -c public localhost IF-MIB::ifOperStatus.3

  IF-MIB::ifOperStatus.3 = INTEGER: up(1)

  如果显示 up 表示连接正常,显示 down 表示网络中断了。

  补充:

  更简单的办法是利用 ethtool 工具,下载地址:<url>http://directory.fsf.org/All_Packages_in_Directory/ethtool.html</url>

  编译安装:

  # ./configure && make && make install

  测试:

  # ethtool eth0

  ....

  Link detected: yes

  如果最后一行显示 yes 表示连接正常,显示 no 表示网络中断了。

  2. 逻辑连接中断(比如网关的线路出了问题等)

  可以通过每10s发送一个小的ping包到网关,看是否有回应,一般网关都是允许ping的。

  这个可以通过一个expect程序(netwatch.exp)来完成,下面这个脚本发送一个字节为1的ping包给网关,并分析ping的输出信息,如果为 0% packet loss,表示正常,以0退出。如果超时(1秒钟),以1退出。

  #!/usr/bin/expect

  set target [lindex $argv 0]

  set timeout 1

  spawn ping -c 1 -s 1 $target

  expect {

  & 0% packet loss& {

  exit 0

  }

  timeout {

  exit 1

  }

  }

  比如网关1为192.168.1.1,网关2为192.168.2.1,那么要监测这两个网关的话,可以这样:

  #!/bin/sh

  netwatch.exp 192.168.1.1

  result1=$?

  netwatch.exp 192.168.2.1

  result2=$?

  if [ &$result1& eq 0 ] && [ &$result2& eq 0 ] ; then

  # 如果上次检测时连接丢失,而此次恢复正常

  if [ -e /var/run/lost-connection ] ; then

  do some recovery action here ...

  rm /var/run/lost-connection

  fi

  # 如果网关1不可达

  elif [ &$result1& ne 0 ] ; then

  change default route to 192.168.2.1

  do some action here, such as iptables NAT

  # 创建连接丢失标识

  touch /var/run/lost-connection

  # 如果网关2不可达

  elif [ &$result2& ne 0 ] ; then

  change default route to 192.168.1.1

  do some action here, such as iptables NAT

  # 创建连接丢失标识

  touch /var/run/lost-connection

  fi

  虽然可以通过iptables的MASQUERADE来实现自动切换,但是如果加了策略路由,就不行了。

  以上只是个人的想法,希望起到抛砖引玉的作用,如果大家有更好的办法或建议,请不要吝啬提出来哦!

关键词标签:监测网络

相关阅读 提示dns服务错误怎么办 dns错误问题多种解决方法 “无法浏览网页” 十招解决疑难杂症 路由器无线不能上网等故障排除 解决VPN路由设置不能访问外网的问题 以前单位同事一次DHCP snooping排错经历 路由器未接地引起的无法拨号故障解决

文章评论
发表评论

热门文章 提示dns服务错误怎么办 dns错误问题多种解决方法 提示dns服务错误怎么办 dns错误问题多种解决方法 三小招教你修复无线网络断线的问题 三小招教你修复无线网络断线的问题 从协议出发 排除企业网络中稀奇故障 从协议出发 排除企业网络中稀奇故障 电信WLAN故障诊断案例 电信WLAN故障诊断案例 光纤头端接接续故障的主要因素 光纤头端接接续故障的主要因素 上网故障 别总拿ARP欺骗病毒说事 上网故障 别总拿ARP欺骗病毒说事

相关下载

人气排行 解决VPN路由设置不能访问外网的问题 登录SSH服务器失败问题的分析及解决 光纤上网 路由器设置页面进不去怎么办 核心交换机故障现象及解决办法 无线网卡连接不上怎么办_无线网卡连接不上解决方法 路由设置不当 导致VPN无法访问外网 提示dns服务错误怎么办 dns错误问题多种解决方法 彻底避免环路问题 正确配置交换机步骤 本机IP设置不当造成路由异常故障分析 经验分享:网关配置不当导致外网不通 解惑:双网络接口下的间歇性断网故障 无线宽带错误代码大全