これ何て呼びますか

TCP/IPのプログラミングについて教えてください。
UDPの特定ポートを使用中の状態にする(Listening)にするサービスを作成したいと思っております。
なぜこのような事をしたいかと言いますと・・・。
あるソフトを使用するのに、特定のUDPポートが空いていると使用できないのです。そのポートを他のソフトまたはサービスで使用していると、他の空いているポート「49152」を使用しにいき、うまく使えるようになります。特定のUDPポートを使用できないようにできればいいのですが、そのような方法も分らないので、簡単なサービスを作れればと思っております。
ご存知の方おられましたら、よろしくお願いいたします。

A 回答 (2件)

http://dondie.de/dbdats/tools/NC.EXE
上記ツール(Windows版)をダウンロードして適当なフォルダに置き,次のようにコマンド入力(使用中にしたいUDPポート番号が162の場合)。オプションの意味は nc -h で調べてください。
nc -l -p 162 -u

この回答への補足

回答、ありがとうございます。
早速試してみたのですが、「NC.EXEは有効なWin32アプリケーションではありません」と言われてしまいます。
対処方法はありますでしょうか。
初心者で申し訳ありません。

補足日時:2008/08/12 14:00
    • good
    • 0
この回答へのお礼

すみません。初歩的なミスでした。
自己解決できました。
ありがとうございました。

お礼日時:2008/08/12 14:06

PerlでもPythonでもCでもJavaでも、socket関連の関数群を利用すればそんなに苦労せずに作れますね。


UDPでは socket() して bind() するだけでよいので、あとはプログラムが勝手に終わらないように無限ループ + sleep() とか recvfrom() とか書いておけば良いでしょう。
http://www.ne.jp/asahi/hishidama/home/tech/socke …
具体的な関数名や引数の内容は言語によって違うので割愛しますが、妙な大文字は単なる定数ですのであまり深く考えずに書いてしまってください。

Perlなら http://x68000.q-e-d.net/~68user/net/udp-2.html のようになります。上の方に use Socket; を記述する必要はありますが、bindする部分は二行で済みます。

参考URL:http://www.ne.jp/asahi/hishidama/home/tech/socke …
    • good
    • 0
この回答へのお礼

ありがとうございます。
自分もPerlがいいんじゃないかと、何の根拠も無しに思っていたので、覚悟が決まりました。
ご教示のURLを参考に頑張ってみます。
ありがとうございました。

お礼日時:2008/08/12 00:08

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!