Différences entre les versions de « Dns multi check »

De BlaxWiki
Aller à la navigationAller à la recherche
m (a renommé Check Dns en Dns multi check)
 
(2 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
Ce [https://wiki.blaxeenprod.com/BENPERSO/files/ckd script] en perl a les mêmes fonctionnalités que dig, mais il interroge plusieurs serveur dns définis dans le script
Ce script en perl a les mêmes fonctionnalités que dig, mais il interroge plusieurs serveur dns définis dans le script


<pre>
<pre>
Ligne 119 : Ligne 119 :




[[Catégorie:Script]]
[[Catégorie:Software]]

Version actuelle datée du 26 janvier 2011 à 17:30

Ce script en perl a les mêmes fonctionnalités que dig, mais il interroge plusieurs serveur dns définis dans le script

#!/usr/bin/perl -w

use strict;
use warnings;

use Term::ANSIColor;

# D'abord on détermine le nombre de colones du terminal.

my $columns;

open P, "/usr/bin/X11/resize 2>&1 |";

while (<P>)
{
        next unless m/^COLUMNS=(\d+)/;
        $columns = $1;
        last;
}

close P;

if (defined $columns) { $columns -= 1; }
else { $columns = 50; }

my $blue   = color("blue") . color("bold");
my $yellow = color("yellow") . color("bold");
my $rs     = color("reset");

#

sub header($)
{
        my $t = shift;
        my $len = ($columns - length($t) - 2) / 2;
        print $blue;
        print "-" x $len;
        print $yellow . " $t " . $blue;
        print "-" x $len;
        print $rs;
        print "\n";
}

sub footer()
{
        print $blue;
        print "-" x $columns;
        print $rs;
        print "\n";
}

sub myhost($@)
{
        my $ns = shift;
        print "\n";
        my $cmd = "host " . join(' ', @_) . " $ns 2>&1";

        my %lines;

        open P, "$cmd |";

        while (<P>)
        {
                chomp;
                next if m/^Using domain server/o;
                next if m/^Name: /o;
                next if m/^Address: /o;
                next if m/^Aliases: /o;
                next if m/^\s*$/o;
                next if defined($lines{$_});
                $lines{$_} = 1;
                print "$_\n";

        }

        close P;
        print "\n";
}

system("clear");

print "\n";

&header("master / calvados - 212.43.194.7");
&myhost("ns-master.fr.clara.net", @ARGV);

&header("ns0 / alsace - 212.43.194.2");
&myhost("212.43.194.2", @ARGV);

&header("ns1 / lorraine - 212.43.194.3");
&myhost("212.43.194.3", @ARGV);

&header("ns2 / flam - 212.43.250.5");
&myhost("212.43.250.5", @ARGV);

&header("ns3 / queyras - 212.43.194.83");
&myhost("212.43.194.83", @ARGV);

&header("ns4 / jersey - 80.168.69.10");
&myhost("80.168.69.10", @ARGV);

&header("ns5 / perche - 212.43.194.98");
&myhost("212.43.194.98", @ARGV);

&header("ns6 / argens - 212.43.194.100");
&myhost("212.43.194.100", @ARGV);

&header("ns0.freesurf / bastille - 212.43.206.2");
&myhost("212.43.206.2", @ARGV);

&header("ns1.freesurf / danton - 212.43.206.3");
&myhost("212.43.206.3", @ARGV);

&footer;