From owner-FreeBSD-users-jp@jp.FreeBSD.org Thu Mar 25 12:55:51 2004
Received: (from daemon@localhost)
	by castle.jp.FreeBSD.org (8.11.6p2+3.4W/8.11.3) id i2P3tpg47791;
	Thu, 25 Mar 2004 12:55:51 +0900 (JST)
	(envelope-from owner-FreeBSD-users-jp@jp.FreeBSD.org)
Received: from patty.center.timedia.co.jp (nurikabe.timedia.co.jp [218.225.123.151])
	by castle.jp.FreeBSD.org (8.11.6p2+3.4W/8.11.3) with ESMTP/inet id i2P3tpd47786
	for <FreeBSD-users-jp@jp.FreeBSD.org>; Thu, 25 Mar 2004 12:55:51 +0900 (JST)
	(envelope-from bugbird@timedia.co.jp)
Received: from diadem.center.timedia.co.jp (diadem.center.timedia.co.jp [192.168.6.31])
	by patty.center.timedia.co.jp (Postfix) with SMTP id 09132F9F09
	for <FreeBSD-users-jp@jp.FreeBSD.org>; Thu, 25 Mar 2004 12:55:46 +0900 (JST)
From: Toshiboumi bugbird Ohta <bugbird@timedia.co.jp>
To: FreeBSD-users-jp@jp.FreeBSD.org
Message-Id: <20040325125545.0ffd6c4c.bugbird@timedia.co.jp>
In-Reply-To: <002b01c41208$84fbcf70$3f3214ac@ad.dcruise.co.jp>
References: <002b01c41208$84fbcf70$3f3214ac@ad.dcruise.co.jp>
Organization: Time Intermedia Corp.
X-Mailer: Sylpheed version 0.9.10 (GTK+ 1.2.10; i386-portbld-freebsd5.2.1)
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-2022-JP
Content-Transfer-Encoding: 7bit
Reply-To: FreeBSD-users-jp@jp.FreeBSD.org
Precedence: list
Date: Thu, 25 Mar 2004 12:55:45 +0900
X-Sequence: FreeBSD-users-jp 78729
Subject: [FreeBSD-users-jp 78729] Re: PING =?ISO-2022-JP?B?GyRCNEYbKEI=?=
 =?ISO-2022-JP?B?GyRCO2slRCE8JWsbKEI=?= 
Sender: owner-FreeBSD-users-jp@jp.FreeBSD.org
X-Originator: bugbird@timedia.co.jp
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+040307

$BB@ED!w%?%$%`%$%s%?!<%a%G%#%"(B $B$G$9(B

On Thu, 25 Mar 2004 10:28:47 +0900
"Keisuke Hamanaka" <hamanaka015@d-cruise.co.jp> wrote:

> $B8=:_!"(BFreebsd$B$GF0$/(BPING$B4F;k%D!<%k$rC5$7$F$$$^$9!#(B
> $B%$%a!<%8$H$7$F$O!"(BWindows$BMQ$N(BEXPING$B$_$?$$$J46$8$G$9!#(B
> Google$B$G8!:w$7$^$7$?$,!"$3$l$H$$$C$?%D!<%k$O8+$D$+$j(B
> $B$^$;$s$G$7$?!#(B

> $B!t@$4V$G$O!"(BPING$B4F;k%D!<%k$/$i$$$N$b$N$O!"4IM}<T$,(B
> $B%7%'%k$G:n$C$F$7$^$&$b$N$J$N$G$7$g$&$+!)(B

 $B0JA0!"%$%s%?!<%M%C%H@\B3$,IT0BDj$G$"$C$?;~4|$K!"ABDL(B
$B>u67$r%A%'%C%/$9$k$?$a$K(B sh $B%9%/%j%W%H$r=q$-$^$7$?!#(B

 $B30It$N%[%9%H$X(B ping $B$rBG$C$F!"1~Ez$,L5$$>l9g$K$O@\B3(B
$B@-$,AS<:$7$?$HH=CG$7$^$9!#(B2 $BBf$N%[%9%H$r(B pin $B$7$F$$$k(B
$B$N$O!"%a%s%F%J%s%9$J$I$G(B 1 $BBfL\$N%[%9%H$,Dd;_$7$F$$$k(B
$B>l9g$N8m8!=P$rKI$0$?$a$G$9!#(B

 cron $B$GDj4|E*$K5/F0$7!">uBV$KA+0\$,$"$l$P(B $B!X%R%"(B
$B%I%-%e%a%s%H!Y$r;H$C$FF0E*$K:n@.$7$?%a!<%k$r4IM}<T$X(B
$BEj$2$k$h$&$K$7$F$"$j$^$9!#(B

# $B%M%C%H%o!<%/$NABDL$,L5$/$J$k$H(B DNS $B$,;H$($J$/$J$k2DG=@-(B
# $B$,$"$k$N$G!"(BIP $B%"%I%l%9$GI=5-$r$7$F$$$^$9(B

 $B$A$g$C$H!"L\E*(B ($BJ#?t$N%[%9%H4F;k(B) $B$+$i$O30$l$k$G$7$g$&$,!"(B
$B;29M$K$J$l$P!D(B

# $B0lIt%"%I%l%9$rIz$;$F$"$j$^$9(B

---8<---8<---8<---
#!/bin/sh
#
#	alive.sh:	check connectivity to external host
#
#	ver. 1.2:	2000$BG/(B 6$B7n(B29$BF|(B $BLZMKF|(B 12$B;~(B08$BJ,(B24$BIC(B JST
#		add one more ping sequence for confirmation.
#
#	ver. 1.1: 	2000$BG/(B 6$B7n(B26$BF|(B $B7nMKF|(B 15$B;~(B56$BJ,(B05$BIC(B JST
#		modify $receiver for direct SMTP connections.
#		modify $tgthst for non DNS depending ping.
#
#	ver. 1.0:	2000$BG/(B 6$B7n(B20$BF|(B $B2PMKF|(B 16$B;~(B43$BJ,(B09$BIC(B JST
#		scratched from junk by bugbird
#
  testcmd="/sbin/ping" ;
tstcmdopt="-c 3" ;
  workfnm="/tmp/alive.$$" ;
#
 mailcmd="/usr/bin/mail -s" ;
  myname=`hostname` ;
receiver="admin@[192.168.***.***]" ;
#
tgthst1="202.232.***.***" ;	# ="www.***.**.jp"
tgthst2="210.239.***.***" ;	# ="www.***.**.jp"
statfnm="/var/run/alive.false" ;
#

pingit ()
{
	$testcmd $tstcmdopt $1 > $workfnm 2>&1 ;
	return $? ;
} ;

notice ()
{
	case $1 in
	"return")
		$mailcmd $1 $receiver <<EOF
		Messeage from: $myname
		External connection returned.
EOF
	;;
	"tripped")
		$mailcmd $1 $receiver <<EOF
		Message from: $myname
		External connection tripped !!
EOF
	;;
	*)
		$mailcmd $myname $receiver < $workfnm
	;;
	esac
} ;

pingit $tgthst1 ;
status=$? ;

case $status in
0)
	if [ -f $statfnm ]
	then
		rm -f $statfnm ;
		notice "return" ;
	else
			# keep alive... do nothing
	fi
;;
2)
	if [ -f $statfnm ]
	then
			# still tripped... do nothing
	else
		pingit $tgthst2 ;
		status=$? ;
		case $status in
		0)
			# still alive...  do nothing
		;;
		2)
			touch $statfnm ;
			notice  "tripped" ;
		;;
		*)
			notice  "other" ;
		;;
		esac
	fi
;;
*)
	notice "other";
;;
esac

rm -f $workfnm ;

## eof
---8<---8<---8<---

-- 
timedia [+81-3-5362-9009] % finger bugbird@timedia.co.jp
Login: bugbird             Name: User Bugbird Toshiboumi Ohta
Directory: /network/admin  Shell: /bsd/tcp/mac/midi
On since Sat Aug 20 1955 (JST) on tyo from mama.and.papa
