{"id":194,"date":"2011-06-01T11:41:34","date_gmt":"2011-06-01T03:41:34","guid":{"rendered":"http:\/\/cowman-chiang.no-ip.org\/wordpress\/?p=194"},"modified":"2023-10-31T15:50:53","modified_gmt":"2023-10-31T07:50:53","slug":"bridge-firewall-%e7%ad%86%e8%a8%98-detect-sh","status":"publish","type":"post","link":"https:\/\/cowmanchiang.me\/wp\/?p=194","title":{"rendered":"Bridge Firewall \u7b46\u8a18 &#8211; detect.sh"},"content":{"rendered":"<h1>detect.sh (\u5075\u6e2c\u7db2\u8def\u72c0\u614b\uff0c\u4ee5\u5224\u5b9a\u662f\u5426\u8981\u79fb\u9664bridge\u6216\u91cd\u5efabridge)<\/h1>\n<pre>\n#!\/bin\/bash\n\nCOUNT=0         # \u7528\u4f86\u8a08\u7b97\u6b21\u6578\u4e4b\u8b8a\u6578\nFLAG=\"YES\"      # \u7528\u4f86\u7de0\u9020\u7121\u7aae\u8ff4\u5708\u4e4b\u8b8a\u6578\nFLAGA=\"YES\"     # \u7528\u4f86\u5224\u65b7\u76ee\u524d\u662f\u5426\u6709\u7121\u5efa\u7acbbridge\uff0c\u9810\u8a2d\u662f\u6709\u5efa\u7acb\n<!--more-->\nwhile [ $FLAG == \"YES\" ]\ndo\n# ping \u5b78\u8853\u7db2\u8def\u7684gateway\uff0c\u5982\u679c\u6b63\u5e38\u70ba1\uff0c\u4e0d\u6b63\u5e38\u70ba0\n  FILESRV=`ping -c1 TAGW |grep TAGW |grep -c ttl` \n\n  #echo $FILESRV\n# \u5982\u679c\u4e0d\u6b63\u5e38\n  if [ $FILESRV -eq 0 ]\n  then\n# COUNTA\u7528\u4f86\u8a18\u9304\u76ee\u524d\u9023\u7dda\u662f\u5426\u6062\u5fa9\u6b63\u5e38\uff0c\u7576\u767c\u751f\u4e0d\u6b63\u5e38\u6642\u6b78\u96f6\uff0c\u7576\u6b63\u5e38\u6642\u7d2f\u52a0\n    COUNTA=0                    #connection still has problem\n# \u5982\u679c\u76ee\u524d\u662f\u6709\u5efa\u7acbbridge\u7684\u72c0\u614b\n    if [ $FLAGA == \"YES\" ]\n    then\n# \u5229\u7528COUNT\u7d2f\u52a0\u8a08\u7b97\u7576\u5efa\u7acbbridge\u6642\uff0c\u4e0d\u6b63\u5e38\u6b21\u6578\u9023\u7e8c\u767c\u751f\u5e7e\u6b21\n      COUNT=$(($COUNT+1))\n# \u5982\u679c\u9023\u7e8c3\u6b21\uff0c\u5247\u79fb\u9664\u6389\u672c\u6a5fbridge\uff0c\u85c9\u7531eth2\u7121\u6cd5\u56de\u61c9backup firewall\u5df2\u555f\u52d5\u5099\u63f4\n      if [ $COUNT -eq 3 ]\n      then\n        \/bin\/sh \/br-fw\/br-del.sh    #let network down, let backup firewall up\n        FLAGA=\"NO\"                  #no bridge\n      fi\n    fi\n  fi\n# \u5982\u679c\u7db2\u8def\u9023\u7dda\u6b63\u5e38\n  if [ $FILESRV -eq 1 ]\n  then\n# \u4f7fCOUNT\u6b78\u96f6\u91cd\u65b0\u8a08\u7b97\n    COUNT=0                     #connection is not stable\n# \u5982\u679c\u76ee\u524dbridge\u662f\u4e0d\u5b58\u5728\n    if [ $FLAGA == \"NO\" ]\n    then\n# \u5229\u7528COUNTA\u8a08\u7b97\u7db2\u8def\u4e0d\u6b63\u5e38\u5f8c\u6062\u5fa9\u5171\u6e2c\u8a66\u4e86\u5e7e\u6b21\n      COUNTA=$(($COUNTA+1))\n      echo $COUNTA\n# \u5982\u679c\u9023\u7e8c\u6b63\u5e38\u6b21\u6578\u7d2f\u7a4d\u905430\u6b21\uff0c\u5247\u91cd\u65b0\u5efa\u7acb\u672c\u6a5fbridge firewall\n      if [ $COUNTA -eq 30 ]\n      then\n# \u547c\u53eb br.sh \u5efa\u7acb bridge firewall\n        \/bin\/sh \/br-fw\/br.sh\n# \u6a19\u793a\u76ee\u524d\u672c\u6a5f\u5df2\u5efa\u7acbbridge firewall\n        FLAGA=\"YES\"\n# \u544a\u77e5\u7ba1\u7406\u8005\uff0c\u76ee\u524d\u5df2\u91cd\u5efa\u5b8c\u6210bridge firewall\n        mail -s \"FW Server 1 (From Server 1)\" cowman.chiang@gmail.com < \/br-fw\/3.txt\n      fi\n    fi\n  fi\n# \u9694\u4e94\u79d2\u518d\u884c\u6e2c\u8a66\u4e00\u6b21\n  sleep 5s\ndone<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>detect.sh (\u5075\u6e2c\u7db2\u8def\u72c0\u614b\uff0c\u4ee5\u5224\u5b9a\u662f\u5426\u8981\u79fb\u9664bridge\u6216\u91cd\u5efabridge) #!\/bin\/bash COUNT=0 # \u7528\u4f86\u8a08\u7b97\u6b21\u6578\u4e4b\u8b8a\u6578 FLAG=&#8221;YES&#8221; # \u7528\u4f86\u7de0\u9020\u7121\u7aae\u8ff4\u5708\u4e4b\u8b8a\u6578 FLAGA=&#8221;YES&#8221; # \u7528\u4f86\u5224\u65b7\u76ee\u524d\u662f\u5426\u6709\u7121\u5efa\u7acbbridge\uff0c\u9810\u8a2d\u662f\u6709\u5efa\u7acb<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[58,8],"tags":[],"class_list":["post-194","post","type-post","status-publish","format-standard","hentry","category-linux","category-network"],"_links":{"self":[{"href":"https:\/\/cowmanchiang.me\/wp\/index.php?rest_route=\/wp\/v2\/posts\/194","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cowmanchiang.me\/wp\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cowmanchiang.me\/wp\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cowmanchiang.me\/wp\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cowmanchiang.me\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=194"}],"version-history":[{"count":1,"href":"https:\/\/cowmanchiang.me\/wp\/index.php?rest_route=\/wp\/v2\/posts\/194\/revisions"}],"predecessor-version":[{"id":2343,"href":"https:\/\/cowmanchiang.me\/wp\/index.php?rest_route=\/wp\/v2\/posts\/194\/revisions\/2343"}],"wp:attachment":[{"href":"https:\/\/cowmanchiang.me\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=194"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cowmanchiang.me\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=194"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cowmanchiang.me\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=194"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}