summaryrefslogtreecommitdiffstats
path: root/contrib/check_dns_random.pl
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/check_dns_random.pl')
-rw-r--r--contrib/check_dns_random.pl75
1 files changed, 75 insertions, 0 deletions
diff --git a/contrib/check_dns_random.pl b/contrib/check_dns_random.pl
new file mode 100644
index 0000000..787d464
--- /dev/null
+++ b/contrib/check_dns_random.pl
@@ -0,0 +1,75 @@
1#!/usr/bin/perl
2# ------------------------------------------------------------------------------
3# File Name: check_dns_random.pl
4# Author: Richard Mayhew - South Africa
5# Date: 2000/01/26
6# Version: 1.0
7# Description: This script will check to see if dns resolves hosts
8# randomly from a list using the check_dns plugin.
9# Email: netsaint@splash.co.za
10# ------------------------------------------------------------------------------
11# Copyright 1999 (c) Richard Mayhew
12# Credits go to Ethan Galstad for coding Nagios
13# If any changes are made to this script, please mail me a copy of the
14# changes :)
15# License GPL
16# ------------------------------------------------------------------------------
17# Date Author Reason
18# ---- ------ ------
19# 1999/09/26 RM Creation
20# ------------------------------------------------------------------------------
21
22# -----------------------------------------------------------------[ Require ]--
23require 5.004;
24
25# --------------------------------------------------------------------[ Uses ]--
26use Socket;
27use strict;
28
29# --------------------------------------------------------------[ Enviroment ]--
30$ENV{PATH} = "/bin";
31$ENV{BASH_ENV} = "";
32$|=1;
33
34my $host = shift || &usage;
35
36my $domainfile = "/usr/local/nagios/etc/domains.list";
37my $wc = `/usr/bin/wc -l $domainfile`;
38my $check = "/usr/local/nagios/libexec/check_dns";
39my $x = 0;
40my $srv_file = "";
41my $z = "";
42my $y = "";
43
44open(DOMAIN,"<$domainfile") or die "Error Opening $domainfile File!\n";
45 while (<DOMAIN>) {
46 $srv_file .= $_;
47}
48 close(DOMAIN);
49 my @data = split(/\n/,$srv_file);
50
51chomp $wc;
52$wc =~ s/ //g;
53$wc =~ s/domains//g;
54
55$x = rand $wc;
56($z,$y) = split(/\./,$x);
57
58print `$check $data[$z] $host`;
59
60
61
62sub usage
63{
64 print "Minimum arguments not supplied!\n";
65 print "\n";
66 print "Perl Check Random DNS plugin for Nagios\n";
67 print "Copyright (c) 2000 Richard Mayhew\n";
68 print "\n";
69 print "Usage: check_dns_random.pl <host>\n";
70 print "\n";
71 print "<host> = DNS server you would like to query.\n";
72 exit -1;
73
74}
75