pub async fn add_aaaa_record(
zone_name: &str,
name: &str,
ipv6_addresses: &[String],
ttl: Option<i32>,
server: &str,
key_data: &RndcKeyData,
) -> Result<()>Expand description
Add AAAA records using dynamic DNS update (RFC 2136) with RRset synchronization.
This function implements declarative RRset management:
- Compares existing DNS records with desired IPv6 addresses
- If mismatch, deletes entire
RRsetand recreates with desired IPs - If match, skips update (idempotent)
§Arguments
zone_name- DNS zone name (e.g., “example.com”)name- Record name (e.g., “www” for www.example.com, or “@” for apex)ipv6_addresses- List of IPv6 addresses for round-robin DNSttl- Time to live in seconds (None = use zone default)server- DNS server address with port (e.g., “10.0.0.1:53”)key_data- TSIG key for authentication
§Errors
Returns an error if the DNS update fails or the server rejects it.