Introducing PostScale -- email API for transactional, inbound, and masked addresses. PostScale

    What Is an AAAA Record

    Learn what an AAAA record is and how it connects your domain name to an IPv6 address. Includes examples for the DNScale dashboard and API.

    An AAAA record (pronounced "quad-A") maps a domain name to an IPv6 address. It's the IPv6 equivalent of an A record and is essential for serving content to users on IPv6 networks.

    How AAAA Records Work

    AAAA records function identically to A records, but store 128-bit IPv6 addresses instead of 32-bit IPv4 addresses:

    example.com.    3600    IN    AAAA    2001:db8:85a3::8a2e:370:7334

    When a client with IPv6 connectivity queries your domain, DNS returns the AAAA record, allowing direct connection over IPv6.

    Why IPv6 Matters

    • Address exhaustion - IPv4 addresses are limited (~4.3 billion); IPv6 provides virtually unlimited addresses
    • Growing adoption - Major ISPs and mobile networks now default to IPv6
    • Better performance - IPv6 can reduce latency by avoiding NAT translation
    • Future-proofing - Ensures your services remain accessible as IPv6 adoption grows

    Common Use Cases

    Dual-Stack Configuration

    Support both IPv4 and IPv6 users:

    example.com.    3600    A       192.0.2.1
    example.com.    3600    AAAA    2001:db8:85a3::1

    IPv6-Only Services

    For modern cloud infrastructure that's IPv6-native:

    api.example.com.    3600    AAAA    2001:db8:85a3::10

    Load Balancing with Multiple AAAA Records

    example.com.    300    AAAA    2001:db8:85a3::1
    example.com.    300    AAAA    2001:db8:85a3::2
    example.com.    300    AAAA    2001:db8:85a3::3

    Record Format

    FieldDescriptionExample
    NameDomain or subdomainwww, @ (apex), api
    TypeRecord typeAAAA
    ContentIPv6 address2001:db8:85a3::8a2e:370:7334
    TTLTime to live (seconds)3600

    IPv6 Address Formats

    IPv6 addresses can be written in full or compressed form:

    FormatExample
    Full2001:0db8:85a3:0000:0000:8a2e:0370:7334
    Compressed2001:db8:85a3::8a2e:370:7334

    DNScale accepts both formats.

    Adding an AAAA Record

    Using the Dashboard

    1. Navigate to your zone in the DNScale dashboard
    2. Click Add Record
    3. Configure the record:
      • Name: Enter subdomain (e.g., www) or @ for apex
      • Type: Select AAAA
      • Value: Enter the IPv6 address
      • TTL: Set the cache duration (default: 3600)
    4. Click Create Record

    Using the API

    Create an AAAA record:

    curl -X POST "https://api.dnscale.eu/v1/zones/{zone_id}/records" \
      -H "Authorization: Bearer YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "www",
        "type": "AAAA",
        "content": "2001:db8:85a3::8a2e:370:7334",
        "ttl": 3600
      }'

    Create dual-stack configuration (A + AAAA):

    # IPv4 record
    curl -X POST "https://api.dnscale.eu/v1/zones/{zone_id}/records" \
      -H "Authorization: Bearer YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "@",
        "type": "A",
        "content": "192.0.2.1",
        "ttl": 3600
      }'
     
    # IPv6 record
    curl -X POST "https://api.dnscale.eu/v1/zones/{zone_id}/records" \
      -H "Authorization: Bearer YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "@",
        "type": "AAAA",
        "content": "2001:db8:85a3::1",
        "ttl": 3600
      }'

    API Response:

    {
      "status": "success",
      "data": {
        "message": "Record created successfully",
        "record": {
          "id": "encoded-record-id",
          "name": "www.example.com.",
          "type": "AAAA",
          "content": "2001:db8:85a3::8a2e:370:7334",
          "ttl": 3600,
          "disabled": false
        }
      }
    }

    Best Practices

    1. Always configure dual-stack - Add both A and AAAA records to support all users

    2. Use consistent TTLs - Keep A and AAAA record TTLs the same to ensure consistent behavior

    3. Test IPv6 connectivity - Verify your server is actually reachable via IPv6 before adding records

    4. Consider Happy Eyeballs - Modern browsers use "Happy Eyeballs" (RFC 8305) to race IPv4 and IPv6 connections

    5. Monitor both protocols - Ensure your monitoring covers both IPv4 and IPv6 endpoints

    Testing AAAA Records

    Verify your AAAA record with dig:

    dig AAAA example.com
     
    # Or query a specific nameserver
    dig AAAA example.com @ns1.dnscale.eu
    • A - IPv4 address records
    • CNAME - Alias to another domain name
    • ALIAS - Root domain aliasing

    Conclusion

    AAAA records are essential for modern internet infrastructure. As IPv6 adoption continues to grow, ensuring your domains have proper AAAA records guarantees accessibility for all users. DNScale makes it easy to manage both IPv4 and IPv6 records from a single interface.