UDP パケットを送信する Perl スクリプト[Perl]
(2020-02-24 09:12:56) by shinoda


もう10年近く前に作ったシステムの移行をしているのだけど、その中に UDP パケットでデータを受け取っているプログラムがある。firewall の設定をしたり、ちょっとだけ新サーバに合わせてそのプログラムの受信部分を修正したので、疎通確認だけでもしときたいなっと。Perl で簡単なプログラムでも作ろうと思ったんだけど、念の為にググってみると、ちゃんとそういうプログラムが公開されているね。

ProjectLiliO「ソケットを作成しUDPパケットを送信するプログラムサンプル」

もう、そこに載ってるソースそのまま(スコープがグローバルしかないので、変数宣言の my だけ外すという繊細さを見せてるが(笑)>俺)にコピー。

#!/usr/bin/perl

use Socket;

$ipstr = $ARGV[0];
$port = $ARGV[1];
$msg = $ARGV[2];

$ipaddr = inet_aton($ipstr);
$sockaddr = pack_sockaddr_in($port, $ipaddr);
socket(SOCKET, PF_INET, SOCK_DGRAM, 0);
send(SOCKET,$msg , 0, $sockaddr);

無事、テスト終了。

最近 Perl もあまり触ってないので、これだけのコード書くにも色々調べないと駄目だったと思うので、大変助かりました。ありがとうございます>ProjectLiliO

コメント投稿
次の記事へ >
< 前の記事へ
TOPへ戻る

Powered by
MT4i 3.0.8