30 lines
934 B
Bash
Executable File
30 lines
934 B
Bash
Executable File
#!/bin/bash
|
|
# FILE: wgapi:back/lib/ns/update/add
|
|
# DESCRIPTION: Add a new peer's domain to nameserver
|
|
# USAGE: add domain ipv4 ipv6
|
|
# ERRORS:
|
|
# 3: Bad usage
|
|
# 4: config file not found
|
|
# 5: nsupdate failed
|
|
|
|
[ ${#} -eq 3 ] || exit 3
|
|
CONFIG_FILE='/etc/wgapi/config'
|
|
[ -f "${CONFIG_FILE}" ] || exit 4
|
|
source "${CONFIG_FILE}"
|
|
|
|
printf "update add ${1}. ${DNS_TTL} A ${2}
|
|
update add ${1}. ${DNS_TTL} AAAA ${3}
|
|
update add *.${1}. ${DNS_TTL} CNAME ${1}.
|
|
send
|
|
update add $("${LIB_DIR}/ns_update_rev_ipv4" "${2}") ${DNS_TTL} PTR ${1}.
|
|
send
|
|
update add $("${LIB_DIR}/ns_update_rev_ipv6" "${3}") ${DNS_TTL} PTR ${1}."
|
|
|
|
"${LIB_DIR}/ns_update_send" "update add ${1}. ${DNS_TTL} A ${2}
|
|
update add ${1}. ${DNS_TTL} AAAA ${3}
|
|
update add *.${1}. ${DNS_TTL} CNAME ${1}.
|
|
send
|
|
update add $("${LIB_DIR}/ns_update_rev_ipv4" "${2}") ${DNS_TTL} PTR ${1}.
|
|
send
|
|
update add $("${LIB_DIR}/ns_update_rev_ipv6" "${3}") ${DNS_TTL} PTR ${1}." || exit 5
|