Perl/CGI で接続元の MAC アドレスを取得する関数を作ってみた。当然だが,サーバとクライアント (接続元) が同じブロードキャストドメインにある場合のみ有効である。
print &get_macaddr($ENV{"REMOTE_ADDR"}) . "\n";
sub get_macaddr {
my $ip = shift;
my $mac = qx(arp -n $ip | awk '{print \$4}');
chomp $mac;
return if ($mac eq "no");
return lc($mac);
}
コメント