#!/usr/bin/perl -w use strict; use Getopt::Long qw(:config no_ignore_case); use Time::HiRes qw/ time sleep /; sub usage() { print "Usage: check_wins -H -q [-t ]\n" } my ($host, $query, $type); my $result = GetOptions( "H|host=s" => \$host, "q|query=s" => \$query, "t|type=s" => \$type, ); if (!$type) { $type = "00" } if (!$host || !$query) { usage(); exit 3; } my ($start, $end, $time); $start = time; $result = `/usr/bin/nmblookup -R -U "$host" "$query#$type"`; $end = time; $time = sprintf("%.3f", $end - $start); $result =~ s/\n/: /; if ($result =~ /name_query failed/) { print "WINS CRITICAL: ${result}"; exit(2); } else { print "WINS OK: ${time} seconds response time. ${result}"; exit(0); }