This library provides two main features:
This library does NOT provide features to contact the REST APIs such as ARIN's Whois-RWS.
Create a new console C# project, then install the WhoisParsers NuGet package by using the Visual Studio GUI or by using this command in the Package Manager Console:
Install-Package WhoisParsers
var parser = new WhoisParser(new SectionTokenizer(), new SectionParser());
var parser = new WhoisParser(new AfrinicSectionTokenizer(), new SectionParser());
You can get the sample arin.sample.txt file from here.
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();
}
Public functions provided by WhoisParser include:
Function | Description |
---|---|
ColumnsPerType | Retrieve a list of unique record names for each type of records in a database dump. Signature variations:
|
RetrieveSections | Retrieve parsed sections from the bulk database. Signature variations:
|
RetrieveSectionsFromString | Retrieve parsed sections from the bulk database where the database is passed in as a string. Signature variations:
|
The library contains functions to increment IPV4 and (more importantly) IPv6 IP addresses.
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()));
The output looks like this:
Before: 192.168.0.1, After: 192.168.0.2
Before: 2001:db8:a0b:12f0::1, After: 2001:db8:a0b:12f0::2
Documentation TODO
Documentation TODO
Documentation TODO