Como posso verificar se os números IP estão na mesma sub-rede com Perl?

StackOverflow https://stackoverflow.com/questions/962347

  •  12-09-2019
  •  | 
  •  

Pergunta

Como posso verificar se os números IP estão na mesma sub-rede com Perl? Eu uso NetAddr :: IP ?

Graças.

Foi útil?

Solução

Parece que o Net :: Subnets Perl módulo faria isso. Há um exemplo em que a ligação que eu dei. Se você não quiser usar CPAN para obter o módulo, tanto Debian e Ubuntu tem uma libnet-sub-perl pacote.

Outras dicas

Você poderia tentar o seguinte:

#!/usr/bin/perl

use warnings;
use strict;
use NetAddr::IP;

my $first  = NetAddr::IP->new('10.0.0.1/24');
my $second = NetAddr::IP->new('10.0.0.5/32');

if ($second->within($first)) {
    printf "%s is within %s\n", $second, $first;
} else {
    printf "%s is not within %s\n", $second, $first;
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top