ddns-scripts: add blazingfast.io Anycast DNS provider#29486
Open
fkitsantas wants to merge 1 commit into
Open
Conversation
Contributor
Author
|
@feckert a small update to strengthen update safety. Whenever you got time, run the code review from CoPilot so this can be merged as well. Thank you. |
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
Enhances the Blazingfast.io DDNS provider script by adding JWT token caching and safer update mechanics to reduce repeated logins and avoid API rate limiting.
Changes:
- Added on-disk JWT caching with TTL and a one-time re-auth flow on unauthorized responses.
- Switched JSON update payload handling to a temp file referenced via curl’s
@filesyntax to avoid quoting issues. - Updated in-file documentation and comments (features list, credential encoding guidance).
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
d68201a to
deb1310
Compare
Contributor
Author
deb1310 to
17134b3
Compare
Add DDNS update support for blazingfast.io Anycast DNS via their REST API. Authentication is performed via JWT token obtained from the login endpoint. Zone records are fetched to verify the record type before update, ensuring IPv4 services only target A records and IPv6 services only target AAAA records. Service, zone and record IDs are passed via param_opt as space-separated key=value pairs: service_id=X zone_id=Y record_id=Z curl --config file approach is used throughout to avoid eval and shell injection from user-controlled values. Supports both IPv4 and IPv6. For dual-stack, create two separate DDNS service sections with their respective record IDs. Tested on GL.iNet MT5000 (Brume 3) running OpenWrt with ddns-scripts 2.8.2. Signed-off-by: Fotios Kitsantas <fkitsantas@icloud.com>
17134b3 to
2d523af
Compare
Contributor
Author
|
All issues have been addressed @BKPepe. When you have time please do run the workflows again. Thank you. |
Contributor
Author
|
@feckert The commit is now ready to merge. Thank you! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
📦 Package Details
Maintainer: @feckert
Description:
Improves the existing blazingfast.io Anycast DNS DDNS integration by adding
JWT token caching and strengthening update safety.
JWT tokens are now cached to disk for up to 270 seconds and reused across DDNS
update cycles, reducing unnecessary login requests and helping avoid API rate
limiting. Expired or invalid cached tokens are detected automatically, and a
fresh login is performed transparently when needed.
🧪 Run Testing Details
✅ Formalities
If your PR contains a patch:
git am(e.g., subject line, commit description, etc.)
We must try to upstream patches to reduce maintenance burden.