IPSECKEYRecordValidator
class IPSECKEYRecordValidator implements DnsRecordValidatorInterface (View source)
IPSECKEY record validator
The IPSECKEY record type is used to store IPsec keying material in DNS. This allows devices to set up IPsec tunnels with each other by looking up the required keying material in the DNS. The record structure provides a flexible format for storing various types of keying material for different IPsec protocols.
Format:
Where:
- precedence: An 8-bit unsigned integer priority value (0-255)
- gateway type: Indicates gateway format (0=No gateway, 1=IPv4, 2=IPv6, 3=Domain name)
- algorithm: Indicates public key format (0=No key, 1=RSA, 2=DSA, 3=ECDSA, 4=Ed25519)
- gateway: The gateway element formatted according to gateway type
- public key: Base64 encoded key material (optional if algorithm=0)
Examples:
- 10 1 2 192.0.2.38 AQNRU3mG7TVTO2BkR47usntb102uFJtugbo6BSGvgqt4AQ==
- 10 0 2 . AQNRU3mG7TVTO2BkR47usntb102uFJtugbo6BSGvgqt4AQ==
- 10 2 2 2001:db8:0:8002::2000:1 AQNRU3mG7TVTO2BkR47usntb102uFJtugbo6BSGvgqt4AQ==
- 10 3 2 mygateway.example.com. AQNRU3mG7TVTO2BkR47usntb102uFJtugbo6BSGvgqt4AQ==
Methods
validate(string $content, string $name, mixed $prio, int|string|null $ttl, int $defaultTTL, mixed ...$args)
Validates IPSECKEY record content
Details
__construct(ConfigurationManager $config)
No description
ValidationResult
validate(string $content, string $name, mixed $prio, int|string|null $ttl, int $defaultTTL, mixed ...$args)
Validates IPSECKEY record content
IPSECKEY format: