Support IPv6 for namedrop records

This commit is contained in:
Anders Pitman 2022-02-16 12:45:55 -07:00
parent 5ff2250a59
commit 6f12fc2633

View File

@ -216,10 +216,15 @@ func Listen() {
domain := namedropTokenData.Scopes[0].Domain domain := namedropTokenData.Scopes[0].Domain
host := namedropTokenData.Scopes[0].Host host := namedropTokenData.Scopes[0].Host
recordType := "AAAA"
if IsIPv4(config.PublicIp) {
recordType = "A"
}
createRecordReq := namedrop.Record{ createRecordReq := namedrop.Record{
Domain: domain, Domain: domain,
Host: host, Host: host,
Type: "A", Type: recordType,
Value: config.PublicIp, Value: config.PublicIp,
TTL: 300, TTL: 300,
} }
@ -416,3 +421,8 @@ func printLoginInfo(token, adminDomain string) {
log.Println(fmt.Sprintf("Admin login link: %s", url)) log.Println(fmt.Sprintf("Admin login link: %s", url))
qrterminal.GenerateHalfBlock(url, qrterminal.L, os.Stdout) qrterminal.GenerateHalfBlock(url, qrterminal.L, os.Stdout)
} }
// Taken from https://stackoverflow.com/a/48519490/943814
func IsIPv4(address string) bool {
return strings.Count(address, ":") < 2
}