IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類|軟件專題|手機(jī)版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當(dāng)前所在位置: 首頁系統(tǒng)集成網(wǎng)絡(luò)故障 → 實時監(jiān)測網(wǎng)絡(luò)是否斷線的幾種辦法

實時監(jiān)測網(wǎng)絡(luò)是否斷線的幾種辦法

時間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評論(0)

  相信現(xiàn)在很多公司或網(wǎng)吧開始考慮雙線接入,來實現(xiàn)網(wǎng)絡(luò)的均衡負(fù)載或冗余(備份)線路,保持網(wǎng)絡(luò)的不間斷性。但是如何才能檢測某條線路斷了呢?有以下幾種辦法:

  1. 物理連接中斷(比如網(wǎng)線出現(xiàn)問題)

  這個可以通過SNMP來檢測(需要現(xiàn)安裝 net-snmp 包),如下:

  先查看各網(wǎng)卡的設(shè)備描述編號:

  # 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 的狀態(tài):

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

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

  如果顯示 up 表示連接正常,顯示 down 表示網(wǎng)絡(luò)中斷了。

  補(bǔ)充:

  更簡單的辦法是利用 ethtool 工具,下載地址:http://directory.fsf.org/All_Packages_in_Directory/ethtool.html

  編譯安裝:

  # ./configure && make && make install

  測試:

  # ethtool eth0

  ....

  Link detected: yes

  如果最后一行顯示 yes 表示連接正常,顯示 no 表示網(wǎng)絡(luò)中斷了。

  2. 邏輯連接中斷(比如網(wǎng)關(guān)的線路出了問題等)

  可以通過每10s發(fā)送一個小的ping包到網(wǎng)關(guān),看是否有回應(yīng),一般網(wǎng)關(guān)都是允許ping的。

  這個可以通過一個expect程序(netwatch.exp)來完成,下面這個腳本發(fā)送一個字節(jié)為1的ping包給網(wǎng)關(guān),并分析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

  }

  }

  比如網(wǎng)關(guān)1為192.168.1.1,網(wǎng)關(guān)2為192.168.2.1,那么要監(jiān)測這兩個網(wǎng)關(guān)的話,可以這樣:

  #!/bin/sh

  netwatch.exp 192.168.1.1

  result1=$?

  netwatch.exp 192.168.2.1

  result2=$?

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

  # 如果上次檢測時連接丟失,而此次恢復(fù)正常

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

  do some recovery action here ...

  rm /var/run/lost-connection

  fi

  # 如果網(wǎng)關(guān)1不可達(dá)

  elif [ "$result1" ne 0 ] ; then

  change default route to 192.168.2.1

  do some action here, such as iptables NAT

  # 創(chuàng)建連接丟失標(biāo)識

  touch /var/run/lost-connection

  # 如果網(wǎng)關(guān)2不可達(dá)

  elif [ "$result2" ne 0 ] ; then

  change default route to 192.168.1.1

  do some action here, such as iptables NAT

  # 創(chuàng)建連接丟失標(biāo)識

  touch /var/run/lost-connection

  fi

  雖然可以通過iptables的MASQUERADE來實現(xiàn)自動切換,但是如果加了策略路由,就不行了。

  以上只是個人的想法,希望起到拋磚引玉的作用,如果大家有更好的辦法或建議,請不要吝嗇提出來哦!

關(guān)鍵詞標(biāo)簽:監(jiān)測網(wǎng)絡(luò)

相關(guān)閱讀

文章評論
發(fā)表評論

熱門文章 提示dns服務(wù)錯誤怎么辦 dns錯誤問題多種解決方法 提示dns服務(wù)錯誤怎么辦 dns錯誤問題多種解決方法 “無法瀏覽網(wǎng)頁” 十招解決疑難雜癥 “無法瀏覽網(wǎng)頁” 十招解決疑難雜癥 路由器無線不能上網(wǎng)等故障排除 路由器無線不能上網(wǎng)等故障排除 解決VPN路由設(shè)置不能訪問外網(wǎng)的問題 解決VPN路由設(shè)置不能訪問外網(wǎng)的問題

相關(guān)下載

    人氣排行 解決VPN路由設(shè)置不能訪問外網(wǎng)的問題 登錄SSH服務(wù)器失敗問題的分析及解決 光纖上網(wǎng) 路由器設(shè)置頁面進(jìn)不去怎么辦 核心交換機(jī)故障現(xiàn)象及解決辦法 無線網(wǎng)卡連接不上怎么辦_無線網(wǎng)卡連接不上解決方法 路由設(shè)置不當(dāng) 導(dǎo)致VPN無法訪問外網(wǎng) 提示dns服務(wù)錯誤怎么辦 dns錯誤問題多種解決方法 徹底避免環(huán)路問題 正確配置交換機(jī)步驟