#!/usr/bin/perl # # nsquick.pl: # # DNS-Server-Schnelltest # use strict; use warnings; use Data::Dump qw /dump/; my $dns = shift @ARGV; my $dom = shift @ARGV; my $out; sub dig { my $dns = shift; my $query = shift; my $timeout = shift; my $tries = shift; my $status = 'ERROR'; my $qtime = '---'; my $in = qx[dig \@$dns $query +time=$timeout +tries=$tries]; my @list = split( /\n/, $in ); for ( @list ) { $status = 'NOCONN' if $_ =~ /;; connection timed out;/; $status = $1 if $_ =~ /.*status: (.*), .*/; $qtime = $1 if $_ =~ /^;; Query time: (.*) msec.*/; } return "$dns;;$status;;$qtime"; } push @$out, dig( $dns, $dom, 4, 1 ); push @$out, dig( $dns, $dom, 4, 1 ); print "$_\n" for @answers;