62 Commits

Author SHA1 Message Date
Michel Loiseleur
c832a23a73
chore(release): updates kustomize & docs with v0.21.0 (#6349)
Signed-off-by: Michel Loiseleur <michel.loiseleur@traefik.io>
2026-04-06 18:21:30 +05:30
Seena Fallah
736a2d58ae
feat!: generalize PTR record support from rfc2136 to all providers (#6232)
* feat(metrics): add source wrapper metrics for invalid and deduplicated endpoints

Add GaugeVecMetric.Reset() to clear stale label combinations between cycles.

Introduce invalidEndpoints and deduplicatedEndpoints gauge vectors in the
source wrappers package, partitioned by record_type and source_type. The
dedup source wrapper now tracks rejected (invalid) and de-duplicated
endpoints per collection cycle.

Update the metrics documentation and bump the known metrics count.

Signed-off-by: Seena Fallah <seenafallah@gmail.com>

* feat(source): add PTR source wrapper for automatic reverse DNS

Implement ptrSource, a source wrapper that generates PTR endpoints from
A/AAAA records. The wrapper supports:

- Global default via WithCreatePTR (maps to --create-ptr flag)
- Per-endpoint override via record-type provider-specific property
- Grouping multiple hostnames sharing an IP into a single PTR endpoint
- Skipping wildcard DNS names

Add WithPTRSupported and WithCreatePTR options to the wrapper Config
and wire the PTR wrapper into the WrapSources chain when PTR is in
managed-record-types.

Signed-off-by: Seena Fallah <seenafallah@gmail.com>

* feat(config): add --create-ptr flag and deprecate --rfc2136-create-ptr

Add the generic --create-ptr boolean flag to Config, enabling automatic
PTR record creation for any provider. Add IsPTRSupported() helper that
checks whether PTR is included in --managed-record-types.

Add validation: --create-ptr (or legacy --rfc2136-create-ptr) now
requires PTR in --managed-record-types, preventing misconfiguration.

Mark --rfc2136-create-ptr as deprecated in the flag description.

Signed-off-by: Seena Fallah <seenafallah@gmail.com>

* refactor(rfc2136): remove inline PTR logic in favor of PTR source wrapper

Remove the createPTR field, AddReverseRecord, RemoveReverseRecord, and
GenerateReverseRecord methods from the rfc2136 provider. PTR record
generation is now handled generically by the PTR source wrapper before
records reach the provider.

Update the PTR creation test to supply pre-generated PTR endpoints
(simulating what the source wrapper produces) instead of relying on
the provider to create them internally.

Signed-off-by: Seena Fallah <seenafallah@gmail.com>

* feat(controller): wire PTR source wrapper into buildSource

Pass the top-level Config to buildSource so it can read IsPTRSupported()
and the CreatePTR / RFC2136CreatePTR flags. When PTR is in
managed-record-types, the PTR source wrapper is installed in the
wrapper chain with the combined create-ptr default.

Signed-off-by: Seena Fallah <seenafallah@gmail.com>

* chore(pdns): remove stale comment and fix whitespace

Remove an outdated comment about a single-target-per-tuple assumption
that no longer applies.

Signed-off-by: Seena Fallah <seenafallah@gmail.com>

* docs: add PTR records documentation and update existing guides

Add docs/advanced/ptr-records.md covering the --create-ptr flag,
per-resource annotation overrides, prerequisites, and usage examples.

Update:
- annotations.md: document record-type annotation
- flags.md: add --create-ptr, mark --rfc2136-create-ptr as deprecated
- tutorials/rfc2136.md: point to generic --create-ptr flag
- contributing/source-wrappers.md: add PTR wrapper to the chain
- mkdocs.yml: add PTR Records navigation entry

Signed-off-by: Seena Fallah <seenafallah@gmail.com>

* feat(rfc2136)!: remove rfc2136-create-ptr in favor of create-ptr

Signed-off-by: Seena Fallah <seenafallah@gmail.com>

---------

Signed-off-by: Seena Fallah <seenafallah@gmail.com>
2026-03-30 13:36:16 +05:30
Seena Fallah
ba0baebade
docs: add BIND9 on Kubernetes with Kind tutorial for rfc2136 provider (#6295)
* docs: add BIND9 on Kubernetes with Kind tutorial for rfc2136 provider

Add a step-by-step guide for deploying BIND9 and ExternalDNS inside
a local Kind cluster, covering forward (A) and reverse (PTR) DNS
zones with TSIG authentication.

Signed-off-by: Seena Fallah <seenafallah@gmail.com>

* docs: apply suggestions for bind9 tutorial

Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com>

---------

Signed-off-by: Seena Fallah <seenafallah@gmail.com>
Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com>
2026-03-22 16:16:13 +05:30
Alexis Vanier
4e2cf5631c
docs(rfc2136): document AXFR requirement for sync policy (#6083) 2026-01-06 23:11:41 +05:30
Michel Loiseleur
627ba0a93d
chore(release): updates kustomize & docs with v0.20.0 (#5958)
Signed-off-by: Michel Loiseleur <michel.loiseleur@traefik.io>
2025-11-14 02:09:39 -08:00
vflaux
1debdbcb3d
doc(tutorials/rfc2136): fix RBAC (#5827) 2025-09-09 23:11:58 -07:00
Michel Loiseleur
7058c6a2fa
chore(release): updates kustomize & docs with v0.19.0 (#5792)
* chore(release): updates kustomize & docs with v0.19.0

Signed-off-by: Michel Loiseleur <michel.loiseleur@traefik.io>

* self-review

---------

Signed-off-by: Michel Loiseleur <michel.loiseleur@traefik.io>
2025-09-02 03:21:17 -07:00
Michel Loiseleur
7bfc12612d
chore(release): updates kustomize & docs with v0.18.0 (#5573)
* chore(release): updates kustomize & docs with v0.18.0

Signed-off-by: Michel Loiseleur <michel.loiseleur@traefik.io>

* add endpointslices rbac

* fix version updater script

---------

Signed-off-by: Michel Loiseleur <michel.loiseleur@traefik.io>
2025-06-26 06:14:30 -07:00
Michel Loiseleur
52382e7183
chore(release): updates kustomize & docs with v0.17.0 (#5396)
* chore(release): updates kustomize & docs with v0.17.0

Signed-off-by: Michel Loiseleur <michel.loiseleur@traefik.io>

* add optional workflow dispatch for doc

* review

---------

Signed-off-by: Michel Loiseleur <michel.loiseleur@traefik.io>
2025-05-14 08:27:19 -07:00
riupie
4be9faf77b RFC2136: fix typo on environment variable 2025-05-04 12:27:28 +07:00
Bas Janssen
7d57ac2394 RFC2136: Update tutorial to show Helm example with TSIG in secret 2025-04-24 13:13:15 +02:00
Michel Loiseleur
d5b403a9fd chore(release): updates kustomize & docs with v0.16.1
Signed-off-by: Michel Loiseleur <michel.loiseleur@traefik.io>
2025-03-15 15:50:00 +01:00
Michel Loiseleur
ac4049bf03
ci(docs): add markdown linters and editorconfig (#5055)
* ci(docs): add markdown linters

* fixes issues in md detected by the linter

* fix workflow

* pre commit

* add editor config

* fix test

* review
2025-02-09 14:07:56 -08:00
Jeremy-Boyle
781eb5c8ef
Added init work to support RFC2136 multiple hosts.
Signed-off-by: Jeremy-Boyle <9406398+Jeremy-Boyle@users.noreply.github.com>

Fixed go tests, added checks to ensure multiple hosts, and RFC2136LoadBalancingStrategy is set and can be overritten

Signed-off-by: Jeremy-Boyle <9406398+Jeremy-Boyle@users.noreply.github.com>

Documentation to support Multiple Hosts and Load Balancing features

Signed-off-by: Jeremy-Boyle <9406398+Jeremy-Boyle@users.noreply.github.com>

WIP, counter not working correctly

Signed-off-by: Jeremy-Boyle <9406398+Jeremy-Boyle@users.noreply.github.com>

Make pointers to the rfc2136 provider, fixed counter issue, log out last error.

Signed-off-by: Jeremy-Boyle <9406398+Jeremy-Boyle@users.noreply.github.com>

Fix error with failover not working correctly

Signed-off-by: Jeremy-Boyle <9406398+Jeremy-Boyle@users.noreply.github.com>

Repoint makefile us.gcr.io/k8s-artifacts-prod/external-dns

Signed-off-by: Jeremy-Boyle <9406398+Jeremy-Boyle@users.noreply.github.com>

Repoint makefile us.gcr.io/k8s-artifacts-prod/external-dns

Signed-off-by: Jeremy-Boyle <9406398+Jeremy-Boyle@users.noreply.github.com>

Fix changes that arent related directly to this PR

Signed-off-by: Jeremy-Boyle <9406398+Jeremy-Boyle@users.noreply.github.com>

Changed comment message details for counter

Signed-off-by: Jeremy-Boyle <9406398+Jeremy-Boyle@users.noreply.github.com>
2025-01-28 17:06:41 -06:00
Kubernetes Prow Robot
fc24607635
Merge pull request #4893 from TomyLobo/patch-1
docs(Microsoft DNS): improve instructions
2025-01-23 00:38:57 -08:00
TomyLobo
d3bf750d2b
Fix indentation 2025-01-16 19:21:06 +01:00
Raffaele Di Fazio
a8351d1103 replace all versions to v0.15.1
Signed-off-by: Raffaele Di Fazio <difazio.raffaele@gmail.com>
2024-12-24 10:22:13 +01:00
TomyLobo
cd9be5ff80
Improve Microsoft DNS instructions
- List secure updates first
- Remove the confusing "(Insecure Updates)" part from the main headline
- Mention zone transfers to other domains
- Mention creating a user for secure updates
2024-11-22 13:02:38 +01:00
Raffaele Di Fazio
4117398643 Merge branch 'master' into raffo/docs-v0.15.0 2024-09-06 12:10:29 +02:00
Raffaele Di Fazio
2313af8bd2 update the docs to v0.15.0
Signed-off-by: Raffaele Di Fazio <difazio.raffaele@gmail.com>
2024-09-05 19:37:57 +02:00
Michel Loiseleur
7ae03cdfc7
docs: refactor title and organisation 2024-09-05 09:09:48 +02:00
Kubernetes Prow Robot
8245b89891
Merge pull request #4283 from angeloxx/feature/rfc-2136-ptr
feat(rfc2136): add PTR optional support
2024-06-20 00:44:17 -07:00
Raffaele Di Fazio
226dbb931f update docs to v0.14.2 2024-05-18 18:32:35 +02:00
Stefan Lasiewski
d3212c36a9
Fix headings, whitespace
Fixed headings around "Secure Updates" .
Also fixed a couple of whitespace issues.
2024-05-10 18:51:11 -07:00
Raffaele Di Fazio
672e2c029f replace all links in tutorials for v0.14.1
Signed-off-by: Raffaele Di Fazio <difazio.raffaele@gmail.com>
2024-03-22 17:14:35 +01:00
angeloxx
cd2088dff3 Merged from master and tested. 2024-03-19 13:27:17 +01:00
Kyle Butt
1030de7da9
RFC2136: Document DNS-over-TLS
Add a note about the TLS flags to the RFC2136 Tutorial.
2024-02-26 11:23:34 -07:00
angeloxx
b083e34dfb Rename option with --rfc2136-create-ptr, similar to infoblox option 2024-02-25 18:50:35 +01:00
angeloxx
940899b758 Add command line parameter and update helm 2024-02-25 18:40:12 +01:00
Raffaele Di Fazio
5b5d68f45a updates all versions in documentation
Signed-off-by: Raffaele Di Fazio <difazio.raffaele@gmail.com>
2023-11-11 17:15:49 +01:00
s.kharlamov
4794c01c6f Allow multiple RFC2136 zones 2023-10-08 22:48:48 +00:00
Raffaele Di Fazio
b7c1d9519e bump versions in all docs
Signed-off-by: Raffaele Di Fazio <difazio.raffaele@gmail.com>
2023-05-29 23:11:04 +02:00
Raffaele Di Fazio
00f919d20f all the v0.13.4 updates
Signed-off-by: Raffaele Di Fazio <difazio.raffaele@gmail.com>
2023-03-27 23:07:49 +02:00
Raffaele Di Fazio
75a83b013f replaces all versions of docker images
Signed-off-by: Raffaele Di Fazio <difazio.raffaele@gmail.com>
2023-02-04 15:56:39 +01:00
John Gardiner Myers
d5e1fa1cc1 Update external-dns version in docs 2022-12-22 19:58:22 -08:00
John Gardiner Myers
9f382f41da Use registry.k8s.io instead of k8s.gcr.io 2022-12-22 19:55:54 -08:00
Kubernetes Prow Robot
35f2594745
Merge pull request #2118 from aSauerwein/patch-1
Update rfc2136.md
2021-06-16 00:49:59 -07:00
aSauerwein
6ce7374fb8
Update docs/tutorials/rfc2136.md
Co-authored-by: Nick Jüttner <nick@juni.io>
2021-06-09 10:32:05 +02:00
Kundan Kumar
083e243eae fix_2099 2021-06-03 17:07:44 +05:30
aSauerwein
57597820cf
Update rfc2136.md
rfc2136-gss-tsig is needed for secure dynamic updates on windows
2021-06-02 11:19:43 +02:00
Brock Alberry
f9ad22cbbd
Merge branch 'master' into master 2021-03-18 14:05:18 -04:00
Kubernetes Prow Robot
ef04905cbb
Merge pull request #2015 from stovemeerkat/rfc2136-kerberos-realm
rfc2136: Add cli flag for Kerberos realm and improve tutorial
2021-03-18 07:41:19 -07:00
stovemeerkat
098cedb7f9 docs: Update and improve tutorial for the RFC2136 provider 2021-03-18 12:28:31 +01:00
Kundan Kumar
e1cf5f88a7 updated ingress apiVersion 2021-03-16 12:42:30 +05:30
Kundan Kumar
6adbd4ec25 external-dns configuration update 2021-03-09 17:42:30 +05:30
Brock Alberry
fa857131c2 add krb5 realm support 2021-03-03 21:28:11 +00:00
Kubernetes Prow Robot
57ea816d62
Merge pull request #1946 from jeffspahr/master
Updated docs to reference the v0.7.6 image
2021-02-15 09:23:05 -08:00
Dustin Scott
1e4c1e299d Add RFC3645 support for secure updates with GSS-TSIG 2021-02-05 08:40:31 -06:00
Jeff Spahr
eaf933328f updated docs to reference the v0.7.6 image 2021-02-04 22:29:38 -05:00
cyluss
aa8bcbf21a fix rfc2136 tutorial inconsistency within document 2020-11-06 18:46:50 +09:00