Esta biblioteca oferece dois recursos principais:
Esta biblioteca NÃO fornece recursos para entrar em contato com APIs REST, como Whois-RWS da ARIN.
Crie um novo projeto C# de console e instale o pacote WhoisParsers NuGet usando a GUI do Visual Studio ou este comando no Console do Gerenciador de Pacotes:
Install-Package WhoisParsers
var parser = new WhoisParser ( new SectionTokenizer ( ) , new SectionParser ( ) ) ;
var parser = new WhoisParser ( new AfrinicSectionTokenizer ( ) , new SectionParser ( ) ) ;
Você pode obter o arquivo de amostra arin.sample.txt aqui.
var parser = new WhoisParser ( new SectionTokenizer ( ) , new SectionParser ( ) ) ;
var sections = parser . RetrieveSections ( @"arin.sample.txt" ) ;
foreach ( var section in sections )
{
Console . WriteLine ( string . Format ( CultureInfo . InvariantCulture , " Section ID: {0} " , section . Id ) ) ;
Console . WriteLine ( string . Format ( CultureInfo . InvariantCulture , " Number of records: {0} " , section . Records . Count ) ) ;
Console . WriteLine ( " ---- Section Records: " ) ;
Console . WriteLine ( section ) ;
Console . WriteLine ( ) ;
}
As funções públicas fornecidas pelo WhoisParser incluem:
Função | Descrição |
---|---|
ColunasPorTipo | Recuperar uma lista de nomes de registros exclusivos para cada tipo de registro em um dump de banco de dados. Variações de assinatura:
|
Recuperar seções | Recuperar seções analisadas do banco de dados em massa. Variações de assinatura:
|
RecuperarSeçõesFromString | Recuperar seções analisadas do banco de dados em massa onde o banco de dados é passado como uma string. Variações de assinatura:
|
A biblioteca contém funções para incrementar endereços IP IPV4 e (mais importante) IPv6.
using Microsoft . Geolocation . Whois . Utils ;
.. .
var ipv4Address = IPAddress . Parse ( " 192.168.0.1 " ) ;
Console . WriteLine ( string . Format ( CultureInfo . InvariantCulture , " Before: {0}, After: {1} " , ipv4Address , ipv4Address . Increment ( ) ) ) ;
var ipv6Address = IPAddress . Parse ( " 2001:db8:a0b:12f0::1 " ) ;
Console . WriteLine ( string . Format ( CultureInfo . InvariantCulture , " Before: {0}, After: {1} " , ipv6Address , ipv6Address . Increment ( ) ) ) ;
A saída é semelhante a esta:
Before: 192.168.0.1, After: 192.168.0.2
Before: 2001:db8:a0b:12f0::1, After: 2001:db8:a0b:12f0::2
Documentação TODO
Documentação TODO
Documentação TODO