@Silver Is it safe to assume you’ve ruled out IPv6 connectivity problems with other hosts and are certain the problem is specific to the ACME v01 endpoint?
This timeout does not seem like network issue, as https://acme-v01.api.letsencrypt.org is responding ok, but with real challenge request it gives randomly timeout. We have not seen timeouts last 3hours tho.
Can you share more information? What domain names are you trying to renew and seeing timeouts for? Do you have detailed logs from these attempts? Are you using HTTP-01 challenge types? Which ACME client?
Do you have any logs from these attempts? In the ACME server logs I only see a smattering of GET requests (some returning errors because they are to POST-only endpoints) and no POSTs. That's pretty unusual!
What steps have you taken to rule out your custom ACME client as the problem, or the network connectivity of the server you're running it on?
Can you add an identifying User-Agent to your client? The specification considers that a MUST and you're currently sending the generic Golang UA complicating my log analysis.
IPv6 connectivity problems are possible, although the routing for 2a02:29e8::/32 (containing files.grafilius.ee at 2a02:29e8:770:0:3::24) looks like it was stable from RIPEstat’s perspectives.
Let’s Encrypt’s API is reached by your client contacting Akamai, which relays your request onwards. Akamai has much broader connectivity than the Let’s Encrypt environment from which validation connections originate. So, it’s possible that you had good routing to/from Akamai at that time, but unstable routing to/from the Validation Authority.
One odd thing I noticed is that the first IPs in your traceroutes, in 2a02:29ea:a::/48, are not routable. Does your ISP use NAT for outgoing IPv6 connections? That would be unusual, but possible.
Another odd thing I noticed is that your traceroute started in/around Talinn, Estonia, but you were directed to an Akamai PoP near Denver, Colorado, US. Akamai’s DNS will usually direct you to a much closer PoP. What DNS resolver(s) are you using?