特定のIPアドレスにあるSHOUTcastサーバーが立ち上がっているかどうかをPerlで判別する方法を教えてください。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2004/05/24 20:20:16
  • 終了:--

回答(3件)

id:aki73ix No.1

aki73ix回答回数5224ベストアンサー獲得回数272004/05/26 11:30:47

ポイント10pt

うーん

2の人の回答は見てみましたが、全然関係ないみたいですね(^_^;

ちなみに、GET /(domain)/listen.pls だと、サーバー落ちてても繋がっちゃうんじゃないでしょうか?

ポート直接叩いてコネクションがOKなら1が返るので、タイムアウトならエラーか空白で返ってくるのでこんな感じでいいんじゃないかと思います

自サーバー直接でShotcastサーバー立ててる所見つけられなかったのでテストできませんでしたが、LocalだとこれでOKでした。以下ソース

#!/usr/local/bin/perl

$host=’サーバー名’;

$addr = (gethostbyname($host))[4];

$file = ’/’;

$name = pack(”S n a4 x8”, 2, ポート番号, $addr);

socket(S, 2, 1, 0);

$afx=”0”;

$afx=connect(S, $name);

close(S);

print qq(Content-type: text/html¥n¥n);

print ”<html><body>¥n”;

if($afx == 1){

print ”OK”;

}

else{

print ”error”;

}

print ”</body><html>¥n”;

exit;

多分、こんな感じでいけると思うんですがいかがでしょうか?

id:aki73ix No.2

aki73ix回答回数5224ベストアンサー獲得回数272004/05/24 20:38:37

ポイント20pt

Socket()関数を使って、サーバのリクエストを返すPortにアクセスしてやって返り文字列があるか見てやればOKです

id:dayofgreen

ありがとうございます。SHOUTcastの立ち上がりを見るには、GET /(domain)/listen.plsが適切なのでしょうか?

2004/05/24 22:36:13
id:kanetetu No.3

kanetetu回答回数2199ベストアンサー獲得回数112004/05/25 00:29:19

ポイント40pt

こちらどうぞ。

id:dayofgreen

これらのページのどこかわかりませんが。。

2004/05/25 17:46:20

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません