Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ruanhaishen
Acme.Sh
Commits
10eec7d4
Commit
10eec7d4
authored
Oct 03, 2019
by
neilpang
Browse files
support google dns
parent
be0df07d
Changes
1
Hide whitespace changes
Inline
Side-by-side
acme.sh
View file @
10eec7d4
...
...
@@ -90,6 +90,9 @@ DEBUG_LEVEL_3=3
DEBUG_LEVEL_DEFAULT
=
$DEBUG_LEVEL_1
DEBUG_LEVEL_NONE
=
0
DOH_CLOUDFLARE
=
1
DOH_GOOGLE
=
2
HIDDEN_VALUE
=
"[hidden](please add '--output-insecure' to see this value)"
SYSLOG_ERROR
=
"user.error"
...
...
@@ -3636,7 +3639,7 @@ __trigger_validation() {
}
#endpoint domain type
_ns_lookup
()
{
_ns_lookup
_impl
()
{
_ns_ep
=
"
$1
"
_ns_domain
=
"
$2
"
_ns_type
=
"
$3
"
...
...
@@ -3660,7 +3663,7 @@ _ns_lookup_cf() {
_cf_ld
=
"
$1
"
_cf_ld_type
=
"
$2
"
_cf_ep
=
"https://cloudflare-dns.com/dns-query"
_ns_lookup
"
$_cf_ep
"
"
$_cf_ld
"
"
$_cf_ld_type
"
_ns_lookup
_impl
"
$_cf_ep
"
"
$_cf_ld
"
"
$_cf_ld_type
"
}
#domain, type
...
...
@@ -3673,6 +3676,44 @@ _ns_purge_cf() {
_debug2 response
"
$response
"
}
#checks if cf server is available
_ns_is_available_cf
()
{
if
_get
"https://cloudflare-dns.com"
;
then
return
0
else
return
1
fi
}
#domain, type
_ns_lookup_google
()
{
_cf_ld
=
"
$1
"
_cf_ld_type
=
"
$2
"
_cf_ep
=
"https://dns.google/resolve"
_ns_lookup_impl
"
$_cf_ep
"
"
$_cf_ld
"
"
$_cf_ld_type
"
}
#domain, type
_ns_lookup
()
{
if
[
-z
"
$DOH_USE
"
]
;
then
_debug
"Detect dns server first."
if
_ns_is_available_cf
;
then
_debug
"Use cloudflare doh server"
export
DOH_USE
=
$DOH_CLOUDFLARE
else
_debug
"Use google doh server"
export
DOH_USE
=
$DOH_GOOGLE
fi
fi
if
[
"
$DOH_USE
"
=
"
$DOH_CLOUDFLARE
"
]
||
[
-z
"
$DOH_USE
"
]
;
then
_ns_lookup_cf
"
$@
"
else
_ns_lookup_google
"
$@
"
fi
}
#txtdomain, alias, txt
__check_txt
()
{
_c_txtdomain
=
"
$1
"
...
...
@@ -3681,7 +3722,7 @@ __check_txt() {
_debug
"_c_txtdomain"
"
$_c_txtdomain
"
_debug
"_c_aliasdomain"
"
$_c_aliasdomain
"
_debug
"_c_txt"
"
$_c_txt
"
_answers
=
"
$(
_ns_lookup
_cf
"
$_c_aliasdomain
"
TXT
)
"
_answers
=
"
$(
_ns_lookup
"
$_c_aliasdomain
"
TXT
)
"
_contains
"
$_answers
"
"
$_c_txt
"
}
...
...
@@ -3690,7 +3731,13 @@ __check_txt() {
__purge_txt
()
{
_p_txtdomain
=
"
$1
"
_debug _p_txtdomain
"
$_p_txtdomain
"
_ns_purge_cf
"
$_p_txtdomain
"
"TXT"
if
[
"
$DOH_USE
"
=
"
$DOH_CLOUDFLARE
"
]
||
[
-z
"
$DOH_USE
"
]
;
then
_ns_purge_cf
"
$_p_txtdomain
"
"TXT"
else
_debug
"no purge api for google dns api, just sleep 5 secs"
_sleep 5
fi
}
#wait and check each dns entries
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment