Project Description
This project contains a complete managed .Net SPF validation, SenderID validation and a dns client and dns server implementation.
It's written in C# and fully compatible with .Net 3.5 and Mono 2.
Donations
If you use this library, please send me your feedback and add a link to this page.
In addition you can
Donate via Paypal or send me an
Amazon.de gift card
Nuget Package
The library is avaible on Nuget, too:
http://nuget.org/packages/ARSoft.Tools.Net
Features
Parsing and Validating of SPF/SenderID records:
- RFC 4406 - Sender ID: Authenticating E-Mail
- RFC 4408 - Sender Policy Framework (SPF)
Encoding and Decoding:
- RFC 4648 - The Base16, Base32, and Base64 Data Encodings
DNS related
- DNS Client
- (Multithreaded) DNS Server
- Supports synchronous as well as asynchronous resolving
- Discovery of local configured resolver dns servers on Windows and Linux
- UDP and TCP support
- Full IPv6 support
- RFC 1034 - Domain Names - Concepts and Facilities
- RFC 1035 - Domain Names – Implementation and Specification
- RFC 1183 - New DNS RR Definitions
- RFC 1348 - DNS NSAP RRs
- RFC 1706 - DNS NSAP Resource Records
- RFC 1712 - DNS Encoding of Geographical Location
- RFC 1876 - A Means for Expressing Location Information in the Domain Name System
- RFC 1995 - Incremental Zone Transfer
- RFC 1996 - A Mechanism for Prompt Notification of Zone Changes (DNS NOTIFY)
- RFC 2136 - Dynamic Updates in the Domain Name System
- RFC 2163 - Using the Internet DNS to Distribute MIXER Conformant Global Address Mapping (MCGAM)
- RFC 2230 - Key Exchange Delegation Record for the DNS
- RFC 2535 - Domain Name System Security Extensions (Record parsing only)
- RFC 2539 - Storage of Diffie-Hellman Keys in the Domain Name System
- RFC 2671 - Extension Mechanisms for DNS (EDNS0)
- RFC 2672 - Non-Terminal DNS Name Redirection
- RFC 2673 - Binary Labels in the Domain Name System
- RFC 2782 - A DNS RR for specifying the location of services (DNS SRV)
- RFC 2845 - Secret Key Transaction Authentication for DNS (TSIG)
- RFC 2915 - The Naming Authority Pointer (NAPTR) DNS Resource Record
- RFC 2930 - Secret Key Establishment for DNS (TKEY RR)
- RFC 2931 - DNS Request and Transaction Signatures (SIG(0)s) (Record parsing only)
- RFC 3123 - A DNS RR Type for Lists of Address Prefixes (APL RR)
- RFC 3226 - DNSSEC and IPv6 A6 aware server/resolver message size requirements
- RFC 3403 - Dynamic Delegation Discovery System (DDDS)
- RFC 3596 - DNS Extensions to Support IP Version 6
- RFC 3597 - Handling of Unknown DNS Resource Record (RR) Types
- RFC 3658 - Delegation Signer (DS) Resource Record (RR)
- RFC 3755 - Legacy Resolver Compatibility for Delegation Signer (DS)
- RFC 4025 - A Method for Storing IPsec Keying Material in DNS
- RFC 4034 - Resource Records for the DNS Security Extensions
- RFC 4255 - Using DNS to Securely Publish Secure Shell (SSH) Key Fingerprints
- RFC 4398 - Storing Certificates in the Domain Name System (DNS)
- RFC 4431 - The DNSSEC Lookaside Validation (DLV) DNS Resource Record
- RFC 4509 - Use of SHA-256 in DNSSEC Delegation Signer (DS) Resource Records (RRs) (Record parsing only)
- RFC 4635 - HMAC SHA TSIG Algorithm Identifiers
- RFC 4701 - A DNS Resource Record (RR) for Encoding Dynamic Host Configuration Protocol (DHCP) Information (DHCID RR)
- RFC 5001 - DNS Name Server Identifier (NSID) Option
- RFC 5155 - DNS Security (DNSSEC) Hashed Authenticated Denial of Existence (Record parsing only)
- RFC 5205 - Host Identity Protocol (HIP) Domain Name System (DNS) Extension
- RFC 5702 - Use of SHA-2 Algorithms with RSA in DNSKEY and RRSIG Resource Records for DNSSEC (Record parsing only)
- RFC 5933 - Use of GOST Signature Algorithms in DNSKEY and RRSIG Resource Records for DNSSEC (Record parsing only)
License
The library is released under
Apache License 2.0