ไลบรารีนี้มีคุณสมบัติหลักสองประการ:
Parsers เพื่ออ่านบันทึก Whois จาก การถ่ายโอนฐานข้อมูล whois แบบออฟไลน์จำนวนมาก ขององค์กร IANA (ARIN, AFRINIC, APNIC, LACNIC และ RIPE)
โปรแกรมรวบรวมข้อมูลเพื่อดึงข้อมูล RWhois ออนไลน์ จากเซิร์ฟเวอร์ ARIN Referral Whois นี่เป็นการใช้งาน RFC 2167 บางส่วนที่รองรับทั้งการรวบรวมข้อมูลจำนวนมากโดยใช้คำสั่ง -xfer และการรวบรวมข้อมูลแบบเพิ่มหน่วย
ไลบรารีนี้ ไม่มี ฟีเจอร์ในการติดต่อกับ REST API เช่น Whois-RWS ของ ARIN
สร้างโครงการคอนโซล C# ใหม่ จากนั้นติดตั้งแพ็คเกจ WhoisParsers NuGet โดยใช้ Visual Studio GUI หรือโดยใช้คำสั่งนี้ใน Package Manager Console:
ติดตั้งแพ็คเกจ WhoisParsers
var parser = WhoisParser ใหม่ (SectionTokenizer ใหม่ (), SectionParser ใหม่ ());
var parser = WhoisParser ใหม่ (AfrinicSectionTokenizer ใหม่ (), SectionParser ใหม่ ());
คุณสามารถรับไฟล์ arin.sample.txt ตัวอย่างได้จากที่นี่
var parser = ใหม่ WhoisParser(new SectionTokenizer(), new SectionParser());var Sections = parser.RetrieveSections(@"arin.sample.txt");foreach (ส่วน var ในส่วน){Console.WriteLine(string.Format( CultureInfo.InvariantCulture, "รหัสส่วน: {0}", Section.Id));Console.WriteLine(string.Format(CultureInfo.InvariantCulture, "จำนวนบันทึก: {0}", Section.Records.Count));Console.WriteLine("---- บันทึกส่วน:") ;Console.WriteLine(ส่วน);Console.WriteLine();}
ฟังก์ชั่นสาธารณะที่จัดทำโดย WhoisParser รวมถึง:
การทำงาน | คำอธิบาย |
---|---|
คอลัมน์ต่อประเภท | ดึงรายการชื่อเรกคอร์ดที่ไม่ซ้ำกันสำหรับเรคคอร์ดแต่ละประเภทในดัมพ์ฐานข้อมูล รูปแบบลายเซ็น:
|
ดึงข้อมูล Sections | ดึงส่วนที่แยกวิเคราะห์จากฐานข้อมูลจำนวนมาก รูปแบบลายเซ็น:
|
ดึง SectionsFromString | ดึงส่วนที่แยกวิเคราะห์จากฐานข้อมูลจำนวนมากที่ฐานข้อมูลถูกส่งผ่านเป็นสตริง รูปแบบลายเซ็น:
|
ไลบรารีประกอบด้วยฟังก์ชันในการเพิ่มที่อยู่ IPV4 และ (ที่สำคัญกว่านั้น) ที่อยู่ IPv6
โดยใช้ Microsoft.Geolocation.Whois.Utils;...var ipv4Address = IPAddress.Parse("192.168.0.1");Console.WriteLine(string.Format(CultureInfo.InvariantCulture, "ก่อน: {0}, หลัง: {1} ", ipv4Address, ipv4Address.Increase()));var ipv6Address = IPAddress.Parse("2001:db8:a0b:12f0::1");Console.WriteLine(string.Format(CultureInfo.InvariantCulture, "ก่อน: {0}, หลัง: {1}", ipv6Address, ipv6Address.Increation( )));
ผลลัพธ์มีลักษณะดังนี้:
Before: 192.168.0.1, After: 192.168.0.2 Before: 2001:db8:a0b:12f0::1, After: 2001:db8:a0b:12f0::2
เอกสารสิ่งที่ต้องทำ
เอกสารสิ่งที่ต้องทำ
เอกสารสิ่งที่ต้องทำ