Skip to content

dns/ddclient: add porkbun support to native backend - #5599

Merged
AdSchellevis merged 1 commit into
opnsense:masterfrom
5t0n3:feat/ddclient-native-porkbun
Sep 25, 2026
Merged

AdSchellevis merged 1 commit into
opnsense:masterfrom
5t0n3:feat/ddclient-native-porkbun

Conversation

@5t0n3

@5t0n3 5t0n3 commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Important notices

Before you submit a pull request, we ask you kindly to acknowledge the following:


Describe the problem

The existing ddclient-based Porkbun dynamic DNS backend only supports setting subdomain records (e.g., subdomain.example.com but not example.com) due to the on-root-domain option not being exposed in the OPNSense UI. It sounds like ddclient may be removed from OPNsense soon as well (see e.g. opnsense/ports#223 (comment)), at which point OPNsense would not support Porkbun DNS at all.


Describe the proposed solution

This PR adds a Python implementation to the native dynamic dns backend to support Porkbun's API. I modeled it after the Cloudflare backend script with changes to suit the different API structure.


Related issue

#4761 (mentions non-root-domain breakage)

@austin2118ace

Copy link
Copy Markdown

Ah finally big fan of this!

@jawereq

jawereq commented Sep 19, 2026

Copy link
Copy Markdown

Hi @5t0n3, @AdSchellevis, and others.

I have been running a modified version of this PR in my router for the last month or so, and it has been successfully updating both my IPv4 and IPv6 addresses for my Porkbun domain. This is something I couldn't make work with the legacy ddclient. I tried to handle all the edge cases. The script first tries updating records, which works if they exist. If they don't, it tries to create them.

I would love to get these changes integrated to mainline. My current PR is targeting your fork, @5t0n3. I didn't want to open a duplicate PR to the main plugins project, but I can if this would be better. My current PR is the one above, 5t0n3#1.

@AdSchellevis
AdSchellevis merged commit b3f5426 into opnsense:master Sep 25, 2026
@AdSchellevis AdSchellevis self-assigned this Sep 25, 2026
@AdSchellevis AdSchellevis added the cleanup Low impact changes label Sep 25, 2026
@AdSchellevis

Copy link
Copy Markdown
Member

merged, thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cleanup Low impact changes

Development

Successfully merging this pull request may close these issues.

4 participants