// IP addr: 10.1.2.3
ip := "10.1.2.3"
fqdn := "host.example.com"
zone := "10.in-addr.arpa."
record := "3.2.1"
rip := "3.2.1.10"
err = pdns.Records.Add(ctx, zone, fqdn, powerdns.RRTypePTR, 60, []string{fmt.Sprintf("%s.in-addr.arpa.", ip)})
if err != nil {
log.Warn().Msgf("errored at 1 %v", err)
}
// name is full, non-reversed ip, content is fqdn
err = pdns.Records.Add(ctx, zone, fmt.Sprintf("%s.in-addr.arpa.", ip), powerdns.RRTypePTR, 60, []string{fqdn})
if err != nil {
log.Warn().Msgf("errored at 2 %v", err)
}
// name is fqdn, record is our truncated, reversed ip
err = pdns.Records.Add(ctx, zone, fqdn, powerdns.RRTypePTR, 60, []string{fmt.Sprintf("%s.in-addr.arpa.", record)})
if err != nil {
log.Warn().Msgf("errored at 3 %v", err)
}
// name is truncated, reversed ip record is our fqdn
err = pdns.Records.Add(ctx, zone, fmt.Sprintf("%s.in-addr.arpa.", record), powerdns.RRTypePTR, 60, []string{fqdn})
if err != nil {
log.Warn().Msgf("errored at 4 %v", err)
}
// name is fqdn, record is full, reversed ip
err = pdns.Records.Add(ctx, zone, fqdn, powerdns.RRTypePTR, 60, []string{fmt.Sprintf("%s.in-addr.arpa.", rip)})
if err != nil {
log.Warn().Msgf("errored at 5 %v", err)
}
// name is full, reversed ip, record is fqdn
err = pdns.Records.Add(ctx, zone, fmt.Sprintf("%s.in-addr.arpa.", rip), powerdns.RRTypePTR, 60, []string{fqdn})
if err != nil {
log.Warn().Msgf("errored at 6 %v", err)
}
// Same as above but without the ".in-addr.arpa."
err = pdns.Records.Add(ctx, zone, fqdn, powerdns.RRTypePTR, 60, []string{ip})
if err != nil {
log.Warn().Msgf("errored at 7 %v", err)
}
// name is full, non-reversed ip, content is fqdn
err = pdns.Records.Add(ctx, zone, ip, powerdns.RRTypePTR, 60, []string{fqdn})
if err != nil {
log.Warn().Msgf("errored at 8 %v", err)
}
// name is fqdn, record is our truncated, reversed ip
err = pdns.Records.Add(ctx, zone, fqdn, powerdns.RRTypePTR, 60, []string{record})
if err != nil {
log.Warn().Msgf("errored at 9 %v", err)
}
// name is truncated, reversed ip record is our fqdn
err = pdns.Records.Add(ctx, zone, record, powerdns.RRTypePTR, 60, []string{fqdn})
if err != nil {
log.Warn().Msgf("errored at 10 %v", err)
}
// name is fqdn, record is full, reversed ip
err = pdns.Records.Add(ctx, zone, fqdn, powerdns.RRTypePTR, 60, []string{rip})
if err != nil {
log.Warn().Msgf("errored at 11 %v", err)
}
// name is full, reversed ip, record is fqdn
err = pdns.Records.Add(ctx, zone, rip, powerdns.RRTypePTR, 60, []string{fqdn})
if err != nil {
log.Warn().Msgf("errored at 12 %v", err)
}
}