cloudemu

DNS

DNS zones and records with weighted routing

DNS

Emulates DNS services: Route53 (AWS), DNS (Azure), CloudDNS (GCP).

Provider Mapping

ProviderServiceAccess
AWSRoute53aws.Route53
AzureDNSazure.DNS
GCPCloud DNSgcp.CloudDNS

Key Operations

Zones

import dnsdriver "github.com/stackshy/cloudemu/dns/driver"

zone, _ := aws.Route53.CreateZone(ctx, dnsdriver.ZoneConfig{
    Name: "example.com",
})

zones, _ := aws.Route53.ListZones(ctx)

Records

aws.Route53.CreateRecord(ctx, dnsdriver.RecordConfig{
    ZoneID: zone.ID,
    Name:   "api.example.com",
    Type:   "A",
    TTL:    300,
    Values: []string{"10.0.0.1", "10.0.0.2"},
})

records, _ := aws.Route53.ListRecords(ctx, zone.ID)

Weighted Routing

DNS records support weighted routing for load distribution across multiple endpoints.

On this page