#!/usr/bin/perl use File::Fetch; $mac = ''; $data = ''; $answer = ''; $mac = $1.'-'.$2.'-'.$3 if $ARGV[0] =~/^([\dA-F]{2})[:\-]?([\dA-F]{2})[:\-]?([\dA-F]{2})$/; if($mac eq '') { die 'First parameter should be beginning of MAC address!'; } $ff = File::Fetch->new(uri => 'http://standards.ieee.org/cgi-bin/ouisearch?'.$mac); $where = $ff->fetch('to' => \$data) or die $ff->error; $answer = $1.$2 if $data =~/

([\dA-F]{2}-[\dA-F]{2}-[\dA-F]{2})<\/b>(.+)<\/pre><\/p>/ms;
if($answer ne '') { print $answer; } else { die "Didn't find information for MAC address beginning ".$mac; }