DNS Validator
DNS Validator Library
A comprehensive TypeScript library for validating DNS query results and individual DNS records. Supports validation of traditional DNS records (A, AAAA, MX, TXT, etc.) and DNSSEC records (DNSKEY, DS, RRSIG, NSEC, etc.) with enhanced error reporting and performance optimization.
Example
import { isARecord, validateARecord } from "dns-response-validator";
// Basic validation
const record = { type: "A", address: "192.168.1.1", ttl: 300 };
console.log(isARecord(record)); // true
// Enhanced validation with error details
const result = validateARecord(record);
console.log(result.isValid); // true
Classes
- DNSValidationError
- InvalidFieldValueError
- InvalidQueryStructureError
- InvalidRecordTypeError
- MalformedRecordError
- MissingRequiredFieldError
- ValidationContext
- ValidationPerformanceTracker
Interfaces
- DetailedValidationResult
- ValidationMetrics
- AAAARecord
- ANYRecord
- ARecord
- BaseDNSRecord
- CAARecord
- CNAMERecord
- DNSKEYRecord
- DNSQueryResult
- DSRecord
- MXRecord
- NAPTRRecord
- NSEC3PARAMRecord
- NSEC3Record
- NSECRecord
- NSRecord
- PTRRecord
- RRSIGRecord
- SOARecord
- SRVRecord
- SSHFPRecord
- TLSARecord
- TXTRecord
- ValidationResult
Type Aliases
- DigestAlgorithm
- DNSKEYFlags
- DNSSECAlgorithm
- NSEC3HashAlgorithm
- NodeDNSErrorCodeMap
- NodeDNSErrorCode
- ValidationPatternName
- DNSRecord
- DNSRecordType
Variables
- DigestAlgorithm
- DNSKEYFlags
- DNSSECAlgorithm
- NSEC3HashAlgorithm
- NodeDNSErrorCodes
- ValidationErrorFactory
- ValidationPatterns
- globalPerformanceTracker
Functions
- isDNSKEYRecord
- isDSRecord
- isNSEC3Record
- isNSECRecord
- isRRSIGRecord
- isSSHFPRecord
- calculateKeyTag
- isRecommendedAlgorithm
- isRecommendedDigestAlgorithm
- validateDNSKEY
- validateDS
- validateNSEC
- validateNSEC3
- validateNSEC3PARAM
- validateRRSIG
- validateSignatureTimestamps
- getValidationSuggestions
- validateAAAARecord
- validateARecord
- validateMXRecord
- isNodeDNSErrorCode
- fromNodeResolveAny
- fromNodeTxt
- isNodeSOAShape
- isNodeTLSAShape
- normalizeSOA
- normalizeTLSA
- toANYRecord
- toNodeTxt
- testGetCachedRegex
- fastPreValidate
- isPlainObject
- getOptionalField
- getRequiredField
- isValidIntegerInRange
- isValidRecordType
- trackPerformance
- isValidCAAFlags
- isValidDNSQueryResult
- isValidDNSRecord
- isValidHexString
- isValidNAPTRFlags
- isValidPort
- isValidPriority
- isValidTextRecord
- isValidTLSAMatchingType
- isValidTLSASelector
- isValidTLSAUsage
- isValidTTL
- isValidWeight
- validateDNSResponse
- isAAAARecord
- isANYRecord
- isARecord
- isCAARecord
- isCNAMERecord
- isMXRecord
- isNAPTRRecord
- isNSRecord
- isPTRRecord
- isSOARecord
- isSRVRecord
- isTLSARecord
- isTXTRecord
- isDNSRecord
- validateDNSRecord