hmm...
If I had to guess, I'd say that it can't be set to zero and one second is the lowest setting allowed.
The cache is there for lookups of the root name servers, and the config doesn't let us set override cache times based on depth of recursion.
Ah, I see (again). Didn't think about the root name servers as BIND usually has a named.root
semi-hardcoded into its configuration for this purpose. Not sure if Unbound can use such a thing though.
Even BIND is using the named.root
file as a hint only, it validates the root servers.
Ah, good to know.
In that case it's very unfortunate it's not possible to increase the cache time for the .
zone only.
Guys, let me bump up my question: how should LE handle the case when the remote nameservers don't support capsforid feature?
Wasn't that already answered in post #36 (below)? I am not intending to be difficult it has just been a long and winding thread
Are you looking for improved error message? Or some way to more readily identify problematic DNS servers?
I got some time to do a little more dig
ging:
First, ask the root servers:
$ dig +bufsize=512 +dnssec +norecurse Kronus.Spb.Ru. @a.root-servers.net.
;; Truncated, retrying in TCP mode.
; <<>> DiG 9.16.42-RH <<>> +bufsize +dnssec +norecurse Kronus.Spb.Ru. @a.root-servers.net.
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 3184
;; flags: qr; QUERY: 1, ANSWER: 0, AUTHORITY: 7, ADDITIONAL: 11
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 4096
;; QUESTION SECTION:
;Kronus.Spb.Ru. IN A
;; AUTHORITY SECTION:
Ru. 172800 IN NS a.dns.ripn.net.
Ru. 172800 IN NS e.dns.ripn.net.
Ru. 172800 IN NS f.dns.ripn.net.
Ru. 172800 IN NS d.dns.ripn.net.
Ru. 172800 IN NS b.dns.ripn.net.
Ru. 86400 IN DS 18274 8 2 AB35D17D3F39EB42CEE14C6273247938D33EEEAA9F5CAA70B3858DBF 4BD3E87B
Ru. 86400 IN RRSIG DS 8 1 86400 20230929170000 20230916160000 11019 . NMzOMpWGzb0vmusFYjzFx73oef4OVwPx34AFCH30R1j/WyI+WzpOlIqE 6A8R1ExoE0QMP5ZHyaxoXy9pB3m4jMN7pwmVtzlQ7VQZWHq7PckjrOAQ kE5IF6LJQ333TBwu4FOx3j13+013pr8e4dGJhrwClvbEbJKeXZoHyL2f 29lG+Rcl/qVPtypZjoAQf4lKsNnl8YzM0uq/8NVIVYrn2yWc0dY13V94 zjeM6iBqLGY4NlHbbw81Us2Wbn9VjbBGBGJM3K7JXlm/xJMItpdtGg4d jq9D3QA8434IqNL7YAmk0Y/qjANG4p+AZzKRZO73bryWiBYy8Ph3Lo3l X698Xg==
;; ADDITIONAL SECTION:
a.dns.ripn.net. 172800 IN A 193.232.128.6
a.dns.ripn.net. 172800 IN AAAA 2001:678:17:0:193:232:128:6
e.dns.ripn.net. 172800 IN A 193.232.142.17
e.dns.ripn.net. 172800 IN AAAA 2001:678:15:0:193:232:142:17
f.dns.ripn.net. 172800 IN A 193.232.156.17
f.dns.ripn.net. 172800 IN AAAA 2001:678:14:0:193:232:156:17
d.dns.ripn.net. 172800 IN A 194.190.124.17
d.dns.ripn.net. 172800 IN AAAA 2001:678:18:0:194:190:124:17
b.dns.ripn.net. 172800 IN A 194.85.252.62
b.dns.ripn.net. 172800 IN AAAA 2001:678:16:0:194:85:252:62
;; Query time: 0 msec
;; SERVER: 2001:503:ba3e::2:30#53(2001:503:ba3e::2:30)
;; WHEN: Sat Sep 16 19:47:52 UTC 2023
;; MSG SIZE rcvd: 689
That says to check the .ru
server, so let's try one of those:
$ dig +bufsize=512 +dnssec +norecurse Kronus.Spb.Ru. @2001:678:17:0:193:232:128:6
; <<>> DiG 9.16.42-RH <<>> +bufsize +dnssec +norecurse Kronus.Spb.Ru. @2001:678:17:0:193:232:128:6
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 17793
;; flags: qr; QUERY: 1, ANSWER: 0, AUTHORITY: 5, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 4096
;; QUESTION SECTION:
;Kronus.Spb.Ru. IN A
;; AUTHORITY SECTION:
SPB.RU. 345600 IN NS ns3-geo.nic.RU.
SPB.RU. 345600 IN NS ns4-geo.nic.RU.
SPB.RU. 345600 IN NS ns8-geo.nic.RU.
SPB.RU. 345600 IN DS 45820 8 2 826F21EA47462EC6F09A3CEA7B1088E801096FCB492CAEAA7BF2C08C 2204127C
spb.ru. 345600 IN RRSIG DS 8 2 345600 20230930091201 20230821081813 35208 ru. vTzlLovm7/2SgEk3yBchKIfFBOgSmdrl/twcaTsL0j3izJyEAJAzHVkL fuS6RJFy8YT/kqv0CZ6rYxiH7PWYoAlVFEeSnLFIQFjtDG44P50Zzurh +al10qtk2OqQimAstgeKOHF6ePo7B9BKwEJr1x/2URhG9zcMX51xAZiR ONQ=
;; Query time: 119 msec
;; SERVER: 2001:678:17:0:193:232:128:6#53(2001:678:17:0:193:232:128:6)
;; WHEN: Sat Sep 16 19:48:57 UTC 2023
;; MSG SIZE rcvd: 334
And that does the weird thing where the authority section doesn't match the case of the query, and gives a different case for the RRSIG record than it does for the NS or DS record.
Okay, let's try the same thing against the same server but for novag.ru
instead:
$ dig +bufsize=512 +dnssec +norecurse Novag.Ru. @2001:678:17:0:193:232:128:6
;; Truncated, retrying in TCP mode.
; <<>> DiG 9.16.42-RH <<>> +bufsize +dnssec +norecurse Novag.Ru. @2001:678:17:0:193:232:128:6
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31836
;; flags: qr; QUERY: 1, ANSWER: 0, AUTHORITY: 9, ADDITIONAL: 20
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 4096
;; QUESTION SECTION:
;Novag.Ru. IN A
;; AUTHORITY SECTION:
NOVAG.ru. 345600 IN NS ns4-l2.nic.RU.
NOVAG.ru. 345600 IN NS ns3-l2.nic.RU.
NOVAG.ru. 345600 IN NS ns4-cloud.nic.ru.
NOVAG.ru. 345600 IN NS ns8-cloud.nic.RU.
NOVAG.ru. 345600 IN NS ns8-l2.nic.RU.
J20C0QKDHUA3CUMNKST289FF06U2SQ91.ru. 3600 IN NSEC3 1 1 0 - J21C11SHOOTMOEQKPRM91C8AGL4886M6 NS SOA RRSIG DNSKEY NSEC3PARAM
J20C0QKDHUA3CUMNKST289FF06U2SQ91.ru. 3600 IN RRSIG NSEC3 8 2 3600 20230922203200 20230821081813 35208 ru. pmdzIJNQ3+mo85zMjzycEKSZDgSwm3VVSOBt+8FJVxnM0aTIwtKn/Kwt 7qjcDp1MPnSE9Z/aXA/rBg/7uJjZTmu6ossSNHPPXduCLRFKfoceruPm SXAKI63b/w6le4c1cwkTXqqFZL6171vXivv6gp/JVmbaJhI2haJRufOu AoU=
15C9F20U40BT04M9SMIQ2QMBN4HTGDBK.ru. 3600 IN NSEC3 1 1 0 - 1624U3F0ETHBRT3TI8DR3SG4EUDSHNHH NS DS RRSIG
15C9F20U40BT04M9SMIQ2QMBN4HTGDBK.ru. 3600 IN RRSIG NSEC3 8 2 3600 20230930104207 20230821081813 35208 ru. WVhtxOBTiZRMFAK+RqTN0l9f2DHYge4ZuMyuRvppkpKCqr7Hdj8s7Ykr OD2vr2Td0yEV5KQcFvpWfCqrelnH6qQwPTsp1Ky83kIC/9lYrNWKAOOD LjjkIawEEGIQzFXxykZj3UcfDDGT/0jFdWEDdzsQUqLKPlE2eGuC6yfp IaY=
;; ADDITIONAL SECTION:
ns3-l2.NIC.ru. 345600 IN A 193.232.146.1
ns4-l2.NIC.ru. 345600 IN A 91.217.20.20
ns8-l2.NIC.ru. 345600 IN A 91.217.21.20
ns4-cloud.NIC.ru. 345600 IN A 89.104.93.34
ns4-cloud.NIC.ru. 345600 IN A 89.104.95.30
ns4-cloud.NIC.ru. 345600 IN A 89.104.95.33
ns4-cloud.NIC.ru. 345600 IN A 89.104.95.34
ns4-cloud.NIC.ru. 345600 IN A 194.67.73.79
ns4-cloud.NIC.ru. 345600 IN A 194.67.73.81
ns4-cloud.NIC.ru. 345600 IN A 89.104.93.30
ns4-cloud.NIC.ru. 345600 IN A 89.104.93.33
ns8-cloud.NIC.ru. 345600 IN A 89.104.93.31
ns8-cloud.NIC.ru. 345600 IN A 89.104.93.35
ns8-cloud.NIC.ru. 345600 IN A 89.104.93.36
ns8-cloud.NIC.ru. 345600 IN A 89.104.95.31
ns8-cloud.NIC.ru. 345600 IN A 89.104.95.35
ns8-cloud.NIC.ru. 345600 IN A 89.104.95.36
ns8-cloud.NIC.ru. 345600 IN A 194.67.73.80
ns8-cloud.NIC.ru. 345600 IN A 194.67.73.82
;; Query time: 119 msec
;; SERVER: 2001:678:17:0:193:232:128:6#53(2001:678:17:0:193:232:128:6)
;; WHEN: Sat Sep 16 19:52:49 UTC 2023
;; MSG SIZE rcvd: 998
So that gives different inconsistent case, and also provides an "Additional section". It also looks like this domain isn't DNSSEC-signed, for whatever that's worth.
Okay, let's try devpegass.ru
:
$ dig +bufsize=512 +dnssec +norecurse Devpegass.Ru. @2001:678:17:0:193:232:128:6
;; Truncated, retrying in TCP mode.
; <<>> DiG 9.16.42-RH <<>> +bufsize +dnssec +norecurse Devpegass.Ru. @2001:678:17:0:193:232:128:6
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 2371
;; flags: qr; QUERY: 1, ANSWER: 0, AUTHORITY: 6, ADDITIONAL: 23
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 4096
;; QUESTION SECTION:
;Devpegass.Ru. IN A
;; AUTHORITY SECTION:
DEVPEGASS.ru. 345600 IN NS ns2.reg.ru.
DEVPEGASS.ru. 345600 IN NS ns1.reg.ru.
J20C0QKDHUA3CUMNKST289FF06U2SQ91.ru. 3600 IN NSEC3 1 1 0 - J21C11SHOOTMOEQKPRM91C8AGL4886M6 NS SOA RRSIG DNSKEY NSEC3PARAM
J20C0QKDHUA3CUMNKST289FF06U2SQ91.ru. 3600 IN RRSIG NSEC3 8 2 3600 20230922203200 20230821081813 35208 ru. pmdzIJNQ3+mo85zMjzycEKSZDgSwm3VVSOBt+8FJVxnM0aTIwtKn/Kwt 7qjcDp1MPnSE9Z/aXA/rBg/7uJjZTmu6ossSNHPPXduCLRFKfoceruPm SXAKI63b/w6le4c1cwkTXqqFZL6171vXivv6gp/JVmbaJhI2haJRufOu AoU=
TKNS65V4IDOU6R89JI3R10IHDH8HNVHB.ru. 3600 IN NSEC3 1 1 0 - TKS2A07N4JKIE85SU1B8BHSA9SK81U40 NS DS RRSIG
TKNS65V4IDOU6R89JI3R10IHDH8HNVHB.ru. 3600 IN RRSIG NSEC3 8 2 3600 20231017002832 20230915204438 35208 ru. UwWRE1ZzVPjugp7zGsMBOuoRRlTQqO4gEt0mry/K83bpNAGvx5PcKH2V x2gb2vR3poLzBmMqvWMQj0Vgel/EDj0+v2aO80YiR0PvtdRF+xWZ1rrz 3VuctqIze8BomtXaIZGFurgT4rgI6CPw122MyCD2hMU9TRrNx0mMnaw6 o2o=
;; ADDITIONAL SECTION:
ns1.REG.RU. 345600 IN AAAA 2a00:f940:4::47
ns2.REG.RU. 345600 IN AAAA 2a00:f940:5::190
ns1.reg.ru. 345600 IN A 194.58.117.13
ns1.reg.ru. 345600 IN A 194.58.117.15
ns1.reg.ru. 345600 IN A 194.58.117.17
ns1.reg.ru. 345600 IN A 194.67.73.173
ns1.reg.ru. 345600 IN A 194.67.73.174
ns1.reg.ru. 345600 IN A 176.99.13.11
ns1.reg.ru. 345600 IN A 176.99.13.13
ns1.reg.ru. 345600 IN A 176.99.13.15
ns1.reg.ru. 345600 IN A 176.99.13.17
ns1.reg.ru. 345600 IN A 194.58.117.11
ns2.reg.ru. 345600 IN A 194.58.117.18
ns2.reg.ru. 345600 IN A 194.67.73.175
ns2.reg.ru. 345600 IN A 194.67.73.176
ns2.reg.ru. 345600 IN A 176.99.13.12
ns2.reg.ru. 345600 IN A 176.99.13.14
ns2.reg.ru. 345600 IN A 176.99.13.16
ns2.reg.ru. 345600 IN A 176.99.13.18
ns2.reg.ru. 345600 IN A 194.58.117.12
ns2.reg.ru. 345600 IN A 194.58.117.14
ns2.reg.ru. 345600 IN A 194.58.117.16
;; Query time: 119 msec
;; SERVER: 2001:678:17:0:193:232:128:6#53(2001:678:17:0:193:232:128:6)
;; WHEN: Sat Sep 16 20:01:21 UTC 2023
;; MSG SIZE rcvd: 966
That seems to be much the same, not echoing the case, providing the Additional Section, and not being DNSSEC-signed.
I'm not sure if any of that is actually helpful though, or if I'm just going on a wild goose chase.
I think Let's Encrypt is doing just what they're supposed to, using a standard DNS resolver to try to resolve the name, with the most secure options that they can. I think your only options to fix your problem is to convince the .ru
name servers to fix their behavior, or to use a different CA which isn't quite as meticulous in resolving DNS as Let's Encrypt is.
@MikeMcQ well.. I wouldn't say it's been answered.Here is the bottom line as I understand it: everything worked well before, then LE has changed the way it performs some checks and now a huge part of the internet domains can't get LE certificates. Capsforid feature is not a standard yet (correct me if I'm wrong), so it's not an obligatory for internet registries to support it. That means there should be a working fallback for the domains served by such registries. And, as I see it, either the fallback is not working correctly or the fallback is not implemented. Both are not quite good for the domain owners - we can't get the LE certificates anymore.
Unless that secure options are standardized, I guess LE should keep the way of working with not-so-secured registries. Let it send a warning to the domain owners, but keep providing certificates
I think you should review every answer by LE Staff member @jcjones in this thread.
Follow the links in their posts and the advice provided.
Let's Encrypt hasn't changed anything relating to DNS resolution that I'm aware of. They've used 0x20-randomization all along (at least for many years now). I suspect that it's either something on the .ru
name servers which have changed, or different routing going to a different DNS server in its load-balancer, or something like that.
How was that determined?
I read them multiple times, believe me. Which one do you think I missed?
Then I'm wrong.
Couple items:
- It used to work before
- letsdebug (and other dns testers) shows no issues at all
Something has clearly changed, but not necessarily on the Letsencrypt side.
The difference between Letsencrypt
production and letsdebug
can be explained if spb.ru
(or a firewall in between the DNS client and server) introduced DNS rate limit. That matches the timeout condition observed on the Letsencrypt
side. Of course, this is just one possibility.
By the way, how does the Letsencrypt
's staging behave for a domain that fails in production?
I also have teh same issue wityh spb.ru-based domain. Just opened support ticket request and asked to check DNS server settings + anti-DDoS protection settings/events
hello everyone,
having the same issue with a *.spb.ru domain since the last few days.
so.. bump.
What is spb.ru
and how come there's so many of you?
that's a rather old domain name, dedicated to Saint Petersburg, Russia. They've been providing 3rd level domain registration since around the medieval time.