[PR #911] Added delay to dns porkbun dns update to prevent errors #894

Open
opened 2025-11-20 04:26:27 -05:00 by saavagebueno · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/qdm12/ddns-updater/pull/911
Author: @likeaninja5
Created: 1/12/2025
Status: 🔄 Open

Base: masterHead: master


📝 Commits (4)

📊 Changes

1 file changed (+2 additions, -0 deletions)

View changed files

📝 internal/provider/providers/porkbun/provider.go (+2 -0)

📄 Description

When updating multiple domains after an ip change porkbun seems to have an issue with too many requests in a short period of time. I don't have much more info than that, since porkbun is returning a 5XX. Usually ddns-updater will only get 1 or 2 domains updated before erroring out on the rest.

I don't actually know go, so apologizes if something isn't following standards here.

Before change.

2025-01-12T20:28:22Z INFO Updating record [domain: domain.com | owner: owner1 | provider: porkbun | ip: ipv4] to use 123.123.123.123
2025-01-12T20:28:23Z INFO Updating record [domain: domain.com | owner: owner2 | provider: porkbun | ip: ipv4] to use 123.123.123.123
2025-01-12T20:28:24Z ERROR updating record: for record type A, record owner owner2 and record id record_id_1: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html>
2025-01-12T20:28:24Z INFO Updating record [domain: domain.com | owner: owner3 | provider: porkbun | ip: ipv4] to use 123.123.123.123
2025-01-12T20:28:24Z ERROR getting record IDs: for record type A and record owner owner3: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html>
2025-01-12T20:28:24Z INFO Updating record [domain: domain.com | owner: owner4 | provider: porkbun | ip: ipv4] to use 123.123.123.123
2025-01-12T20:28:24Z ERROR getting record IDs: for record type A and record owner owner4: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html>
2025-01-12T20:28:24Z INFO Updating record [domain: domain.com | owner: owner5 | provider: porkbun | ip: ipv4] to use 123.123.123.123
2025-01-12T20:28:24Z ERROR getting record IDs: for record type A and record owner owner5: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html>
2025-01-12T20:28:24Z INFO Updating record [domain: domain.com | owner: owner6 | provider: porkbun | ip: ipv4] to use 123.123.123.123
2025-01-12T20:28:24Z ERROR getting record IDs: for record type A and record owner owner6: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html>
2025-01-12T20:28:24Z INFO Updating record [domain: domain.com | owner: owner7 | provider: porkbun | ip: ipv4] to use 123.123.123.123
2025-01-12T20:28:24Z ERROR getting record IDs: for record type A and record owner owner7: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html>
2025-01-12T20:28:24Z INFO Updating record [domain: domain.com | owner: owner8 | provider: porkbun | ip: ipv4] to use 123.123.123.123
2025-01-12T20:28:24Z ERROR getting record IDs: for record type A and record owner owner8: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html>
2025-01-12T20:28:24Z INFO Updating record [domain: domain.com | owner: owner9 | provider: porkbun | ip: ipv4] to use 123.123.123.123
2025-01-12T20:28:24Z ERROR getting record IDs: for record type A and record owner owner9: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html>
2025-01-12T20:28:24Z INFO Updating record [domain: domain.com | owner: owner10 | provider: porkbun | ip: ipv4] to use 123.123.123.123
2025-01-12T20:28:25Z ERROR updating record: for record type A, record owner owner10 and record id record_id_2: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html>
2025-01-12T20:28:25Z INFO Updating record [domain: domain.com | owner: owner11 | provider: porkbun | ip: ipv4] to use 123.123.123.123
2025-01-12T20:28:25Z ERROR getting record IDs: for record type A and record owner owner11: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html>

After change:

2025-01-12T21:34:13Z INFO ipv4 address of owner1.domain.com is 123.123.123.123 and your ipv4 address  is 111.111.111.111
2025-01-12T21:34:14Z INFO ipv4 address of owner2.domain.com is 123.123.123.123 and your ipv4 address  is 111.111.111.111
2025-01-12T21:34:14Z INFO ipv4 address of owner3.domain.com is 123.123.123.123 and your ipv4 address  is 111.111.111.111
2025-01-12T21:34:14Z INFO ipv4 address of owner4.domain.com is 123.123.123.123 and your ipv4 address  is 111.111.111.111
2025-01-12T21:34:15Z INFO ipv4 address of owner5.domain.com is 123.123.123.123 and your ipv4 address  is 111.111.111.111
2025-01-12T21:34:15Z INFO ipv4 address of owner6.domain.com is 123.123.123.123 and your ipv4 address  is 111.111.111.111
2025-01-12T21:34:15Z INFO ipv4 address of owner7.domain.com is 123.123.123.123 and your ipv4 address  is 111.111.111.111
2025-01-12T21:34:15Z INFO ipv4 address of owner8.domain.com is 123.123.123.123 and your ipv4 address  is 111.111.111.111
2025-01-12T21:34:15Z INFO ipv4 address of owner9.domain.com is 123.123.123.123 and your ipv4 address  is 111.111.111.111
2025-01-12T21:34:15Z INFO ipv4 address of owner10.domain.com is 123.123.123.123 and your ipv4 address  is 111.111.111.111
2025-01-12T21:34:15Z INFO ipv4 address of owner11.domain.com is 123.123.123.123 and your ipv4 address  is 111.111.111.111
2025-01-12T21:34:16Z INFO ipv4 address of owner12.domain.com is 123.123.123.123 and your ipv4 address  is 111.111.111.111
2025-01-12T21:34:16Z INFO Updating record [domain: domain.com | owner: owner1 | provider: porkbun | ip: ipv4] to use 111.111.111.111
2025-01-12T21:34:18Z INFO Updating record [domain: domain.com | owner: owner2 | provider: porkbun | ip: ipv4] to use 111.111.111.111
2025-01-12T21:34:20Z INFO Updating record [domain: domain.com | owner: owner3 | provider: porkbun | ip: ipv4] to use 111.111.111.111
2025-01-12T21:34:22Z INFO Updating record [domain: domain.com | owner: owner4 | provider: porkbun | ip: ipv4] to use 111.111.111.111
2025-01-12T21:34:25Z INFO Updating record [domain: domain.com | owner: owner5 | provider: porkbun | ip: ipv4] to use 111.111.111.111
2025-01-12T21:34:27Z INFO Updating record [domain: domain.com | owner: owner6 | provider: porkbun | ip: ipv4] to use 111.111.111.111
2025-01-12T21:34:29Z INFO Updating record [domain: domain.com | owner: owner7 | provider: porkbun | ip: ipv4] to use 111.111.111.111
2025-01-12T21:34:32Z INFO Updating record [domain: domain.com | owner: owner8 | provider: porkbun | ip: ipv4] to use 111.111.111.111
2025-01-12T21:34:35Z INFO Updating record [domain: domain.com | owner: owner9 | provider: porkbun | ip: ipv4] to use 111.111.111.111
2025-01-12T21:34:37Z INFO Updating record [domain: domain.com | owner: owner10 | provider: porkbun | ip: ipv4] to use 111.111.111.111
2025-01-12T21:34:40Z INFO Updating record [domain: domain.com | owner: owner11 | provider: porkbun | ip: ipv4] to use 111.111.111.111
2025-01-12T21:34:42Z INFO Updating record [domain: domain.com | owner: owner12 | provider: porkbun | ip: ipv4] to use 111.111.111.111

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/qdm12/ddns-updater/pull/911 **Author:** [@likeaninja5](https://github.com/likeaninja5) **Created:** 1/12/2025 **Status:** 🔄 Open **Base:** `master` ← **Head:** `master` --- ### 📝 Commits (4) - [`d5e4a87`](https://github.com/qdm12/ddns-updater/commit/d5e4a87b55aaeb476dc3c96814293a1abe6cf3f6) Update porkbun api to new url - [`e987dc6`](https://github.com/qdm12/ddns-updater/commit/e987dc672702776316239fb263f1aabd3d450102) Added delay to dns porkbun dns update to prevent errors - [`27bc14e`](https://github.com/qdm12/ddns-updater/commit/27bc14e2be90725a56a8817ae2016e87a24801a1) Merge branch 'master' of https://github.com/likeaninja5/ddns-updater - [`5bab607`](https://github.com/qdm12/ddns-updater/commit/5bab607a0590b25a74f90f7e670070182036775f) Added delay to dns porkbun dns update to prevent errors ### 📊 Changes **1 file changed** (+2 additions, -0 deletions) <details> <summary>View changed files</summary> 📝 `internal/provider/providers/porkbun/provider.go` (+2 -0) </details> ### 📄 Description When updating multiple domains after an ip change porkbun seems to have an issue with too many requests in a short period of time. I don't have much more info than that, since porkbun is returning a 5XX. Usually ddns-updater will only get 1 or 2 domains updated before erroring out on the rest. I don't actually know go, so apologizes if something isn't following standards here. Before change. ``` 2025-01-12T20:28:22Z INFO Updating record [domain: domain.com | owner: owner1 | provider: porkbun | ip: ipv4] to use 123.123.123.123 2025-01-12T20:28:23Z INFO Updating record [domain: domain.com | owner: owner2 | provider: porkbun | ip: ipv4] to use 123.123.123.123 2025-01-12T20:28:24Z ERROR updating record: for record type A, record owner owner2 and record id record_id_1: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html> 2025-01-12T20:28:24Z INFO Updating record [domain: domain.com | owner: owner3 | provider: porkbun | ip: ipv4] to use 123.123.123.123 2025-01-12T20:28:24Z ERROR getting record IDs: for record type A and record owner owner3: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html> 2025-01-12T20:28:24Z INFO Updating record [domain: domain.com | owner: owner4 | provider: porkbun | ip: ipv4] to use 123.123.123.123 2025-01-12T20:28:24Z ERROR getting record IDs: for record type A and record owner owner4: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html> 2025-01-12T20:28:24Z INFO Updating record [domain: domain.com | owner: owner5 | provider: porkbun | ip: ipv4] to use 123.123.123.123 2025-01-12T20:28:24Z ERROR getting record IDs: for record type A and record owner owner5: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html> 2025-01-12T20:28:24Z INFO Updating record [domain: domain.com | owner: owner6 | provider: porkbun | ip: ipv4] to use 123.123.123.123 2025-01-12T20:28:24Z ERROR getting record IDs: for record type A and record owner owner6: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html> 2025-01-12T20:28:24Z INFO Updating record [domain: domain.com | owner: owner7 | provider: porkbun | ip: ipv4] to use 123.123.123.123 2025-01-12T20:28:24Z ERROR getting record IDs: for record type A and record owner owner7: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html> 2025-01-12T20:28:24Z INFO Updating record [domain: domain.com | owner: owner8 | provider: porkbun | ip: ipv4] to use 123.123.123.123 2025-01-12T20:28:24Z ERROR getting record IDs: for record type A and record owner owner8: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html> 2025-01-12T20:28:24Z INFO Updating record [domain: domain.com | owner: owner9 | provider: porkbun | ip: ipv4] to use 123.123.123.123 2025-01-12T20:28:24Z ERROR getting record IDs: for record type A and record owner owner9: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html> 2025-01-12T20:28:24Z INFO Updating record [domain: domain.com | owner: owner10 | provider: porkbun | ip: ipv4] to use 123.123.123.123 2025-01-12T20:28:25Z ERROR updating record: for record type A, record owner owner10 and record id record_id_2: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html> 2025-01-12T20:28:25Z INFO Updating record [domain: domain.com | owner: owner11 | provider: porkbun | ip: ipv4] to use 123.123.123.123 2025-01-12T20:28:25Z ERROR getting record IDs: for record type A and record owner owner11: HTTP status is not valid: 503: <html><head><title>503 Service Temporarily Unavailable</title></head><body><center><h1>503 Service Temporarily Unavailable</h1></center><hr><center>openresty</center></body></html> ``` After change: ``` 2025-01-12T21:34:13Z INFO ipv4 address of owner1.domain.com is 123.123.123.123 and your ipv4 address is 111.111.111.111 2025-01-12T21:34:14Z INFO ipv4 address of owner2.domain.com is 123.123.123.123 and your ipv4 address is 111.111.111.111 2025-01-12T21:34:14Z INFO ipv4 address of owner3.domain.com is 123.123.123.123 and your ipv4 address is 111.111.111.111 2025-01-12T21:34:14Z INFO ipv4 address of owner4.domain.com is 123.123.123.123 and your ipv4 address is 111.111.111.111 2025-01-12T21:34:15Z INFO ipv4 address of owner5.domain.com is 123.123.123.123 and your ipv4 address is 111.111.111.111 2025-01-12T21:34:15Z INFO ipv4 address of owner6.domain.com is 123.123.123.123 and your ipv4 address is 111.111.111.111 2025-01-12T21:34:15Z INFO ipv4 address of owner7.domain.com is 123.123.123.123 and your ipv4 address is 111.111.111.111 2025-01-12T21:34:15Z INFO ipv4 address of owner8.domain.com is 123.123.123.123 and your ipv4 address is 111.111.111.111 2025-01-12T21:34:15Z INFO ipv4 address of owner9.domain.com is 123.123.123.123 and your ipv4 address is 111.111.111.111 2025-01-12T21:34:15Z INFO ipv4 address of owner10.domain.com is 123.123.123.123 and your ipv4 address is 111.111.111.111 2025-01-12T21:34:15Z INFO ipv4 address of owner11.domain.com is 123.123.123.123 and your ipv4 address is 111.111.111.111 2025-01-12T21:34:16Z INFO ipv4 address of owner12.domain.com is 123.123.123.123 and your ipv4 address is 111.111.111.111 2025-01-12T21:34:16Z INFO Updating record [domain: domain.com | owner: owner1 | provider: porkbun | ip: ipv4] to use 111.111.111.111 2025-01-12T21:34:18Z INFO Updating record [domain: domain.com | owner: owner2 | provider: porkbun | ip: ipv4] to use 111.111.111.111 2025-01-12T21:34:20Z INFO Updating record [domain: domain.com | owner: owner3 | provider: porkbun | ip: ipv4] to use 111.111.111.111 2025-01-12T21:34:22Z INFO Updating record [domain: domain.com | owner: owner4 | provider: porkbun | ip: ipv4] to use 111.111.111.111 2025-01-12T21:34:25Z INFO Updating record [domain: domain.com | owner: owner5 | provider: porkbun | ip: ipv4] to use 111.111.111.111 2025-01-12T21:34:27Z INFO Updating record [domain: domain.com | owner: owner6 | provider: porkbun | ip: ipv4] to use 111.111.111.111 2025-01-12T21:34:29Z INFO Updating record [domain: domain.com | owner: owner7 | provider: porkbun | ip: ipv4] to use 111.111.111.111 2025-01-12T21:34:32Z INFO Updating record [domain: domain.com | owner: owner8 | provider: porkbun | ip: ipv4] to use 111.111.111.111 2025-01-12T21:34:35Z INFO Updating record [domain: domain.com | owner: owner9 | provider: porkbun | ip: ipv4] to use 111.111.111.111 2025-01-12T21:34:37Z INFO Updating record [domain: domain.com | owner: owner10 | provider: porkbun | ip: ipv4] to use 111.111.111.111 2025-01-12T21:34:40Z INFO Updating record [domain: domain.com | owner: owner11 | provider: porkbun | ip: ipv4] to use 111.111.111.111 2025-01-12T21:34:42Z INFO Updating record [domain: domain.com | owner: owner12 | provider: porkbun | ip: ipv4] to use 111.111.111.111 ``` --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
saavagebueno added the pull-request label 2025-11-20 04:26:27 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/ddns-updater#894