1
0
mirror of https://github.com/StackExchange/dnscontrol.git synced 2024-05-11 05:55:12 +00:00

825 Commits

Author SHA1 Message Date
f21c8fc400 SPF Optimizer: Enable the use of TXTMulti records to support longer SPF records (#794)
* Add multiple string support to SPF optimizer

Notes:

* This implements [RFC 4408][rfc] for the SPF optimizer. Allowing for
more SPF records to fit within the 10 lookups by using multiple strings.
* By default the max size of the TXT remains at 255. Meaning users will
still only get a single 255 length string unless they modify `txtMaxSize`
and opt into this feature.
* The general recommendation when using multiple strings for TXT records
is to keep the size within a single UDP packet. It seems like the
maximum size for this depends on a bunch of factors that are sometimes
outside of your control. A similar tool has a [formula for estimating the
maximum allowed size][formula]. However I felt giving a user
configurable size would fit with the current configuration style that
dnscontrol has. Similar to how dnscontrol recommends only flattening a
record if absolutely needed, I can see this length being increased by
only enough to get you within 10 lookups.

[rfc]: https://tools.ietf.org/html/rfc4408#section-3.1.3
[formula]: https://github.com/oasys/mkspf/blob/master/Overhead.md

* Add a nice comment for the Chunks function
2020-07-31 13:28:13 -04:00
237c573c2a Make it possible to disable the raw SPF optimizer debug record (#795)
Open to other configuration opens for how best to make this optional. Or
potentially making this an opt in configuration item which would be a
breaking change.

The main reason that someone would want to disable this is if their raw
SPF record goes over the 255 characters. This is potentially another
place that could get some multi string support. But as it is only used
for debugging purposes it seems like there should be a way to outright
disable it too.
2020-07-31 10:40:22 -04:00
4211cf1dc0 Fixing PowerDNS domain creation (#786) 2020-07-30 11:09:21 -04:00
42f7568074 Fix for incomplete results from Azure DNS in fetchRecordSets (#791) 2020-07-28 13:35:56 -04:00
ea328263c7 Route53 uses a custom record type for SPF (#787)
Much like OVH Route53 when queried returns SPF records as their own
type. This small change transcribes the SPF type to TXT

See: https://github.com/StackExchange/dnscontrol/issues/446
See: 644ba70e87/providers/ovh/ovhProvider.go (L169-L172)
2020-07-17 13:02:42 -04:00
644ba70e87 Fixed MX records on NS1 (#783) 2020-07-14 08:33:21 -04:00
df69016cd1 No-op change 2020-07-14 07:20:07 -04:00
f12cd58d1f NS1: Revert enabling TXTMulti (#782)
Co-authored-by: Max Ratmeyer <maxratmeyer@Maxs-MacBook-Pro.local>
2020-07-10 07:08:03 -04:00
2c9301387a aRemove debug statement 2020-07-09 19:34:35 -04:00
530bf10bfa NEW: spf flattener can make first record extra short (#781)
* NEW: spf flattener can make first record extra short

* fixup!
2020-07-09 12:52:49 -04:00
f7d39b578a NS1: Added support for ALIAS, PTR, and TXTMuli (#776) 2020-07-06 20:29:25 -04:00
541bb805da linting (#777) 2020-07-06 20:18:24 -04:00
367a14ab44 Sort updates (cosmetic) (#772)
* Sort updates (cosmetic)

* comments

* More comments
2020-07-01 05:55:20 -04:00
0a36cb7fcc Fix formatting bug. 2020-06-27 15:18:37 -04:00
4979f2938b go get -u github.com/Azure/go-autorest/autorest/to 2020-06-26 12:53:39 -04:00
02b847b333 go get -u github.com/Azure/go-autorest/autorest/azure/auth 2020-06-26 12:53:21 -04:00
c178409f53 go get -u github.com/Azure/azure-sdk-for-go 2020-06-26 12:52:55 -04:00
785e6d7dc7 go get -u github.com/aws/aws-sdk-go 2020-06-26 12:52:05 -04:00
5012021890 go get -u google.golang.org/api 2020-06-26 12:51:32 -04:00
67b3d9f98d go get -u github.com/TomOnTime/utfutil 2020-06-26 12:51:13 -04:00
c0f4f1247d go get -u golang.org/x/net 2020-06-26 12:50:56 -04:00
491a3f8720 Relax tests for Azure temporarily 2020-06-25 17:05:10 -04:00
ea46bc3bbd integration_test.go: Split out pagesize tests (#771) 2020-06-24 15:16:00 -04:00
5f66991458 Fix failing test 2020-06-19 17:15:26 -04:00
Ben
44bd4206e8 fix get-zones code block indentation (#769) 2020-06-19 11:33:35 -04:00
ff8ce26cee Provider support for DS records as children only (#765)
This functionality is required by the GCLOUD provider, which supports
recordsets of type DS but only for child records of the zone, to enable
further delegation. It does not support them at the apex of the zone (@)
because Google Cloud DNS is not itself a registrar which needs to model
this information.

A related change (14ff68b151b5db1f24bcdaccb30b6fa95897940a, #760) was
previously introduced to enable DS support in Google, which broke
integration tests with this provider.

To cleanly support this, we introduce a new provider capability
CanUseDSForChildren and appropriate integration tests. Further, it is no
longer possible to verify a provider has the proper capabilities for a
zone simply by existence of particular records; we adapt the capability
checks to enable inspection of the individual recordsets where this is
required.

Closes #762
2020-06-18 17:24:13 -04:00
505062b628 update AWS/GDNS/Azure deps (#768) 2020-06-18 13:59:17 -04:00
676d98fc4a Linting (#767)
What could possibly go wrong?
2020-06-18 09:37:57 -04:00
Ben
84fd4ae33e get-zone documentation and help fixes (#766) 2020-06-18 09:37:09 -04:00
12e9d2bdd5 Update dependencies (#763)
* gcloud natively supports records of type DS

* doc fix: CanUseDs -> CanUseDS capitalisation fix

* Update github.com/stretchr/testify golang.org/x/tools google.golang.org/api gopkg.in/yaml.v3

Co-authored-by: Matthew Huxtable <matthew.huxtable@sparx.co.uk>
2020-06-09 14:00:20 -04:00
4e2dbd879d Revert "Add support to GCLOUD provider for DS records (#760)" (#761)
This reverts commit 14ff68b151b5db1f24bcdaccb30b6fa95897940a.
2020-06-09 13:31:09 -04:00
ba7efe3402 Merge commit '2e52228d6c25d076c078e752fc3907d4ead54a28' 2020-06-09 12:13:48 -04:00
14ff68b151 Add support to GCLOUD provider for DS records (#760)
* gcloud natively supports records of type DS
* doc fix: CanUseDs -> CanUseDS capitalisation fix
2020-06-09 12:12:04 -04:00
Ben
5e441a4a98 get-certs.md: correct flag names (#758)
* get-certs.md: correct flag names

* Update get-certs.md

added all flags per current `--help` output; rearranged ordering to match `--help`; removed the deprecated `--verbose`
2020-06-03 11:50:07 -04:00
2e52228d6c Release v3.2.0 2020-06-02 10:41:21 -04:00
f884e7615f go mod tidy 2020-06-02 07:01:09 -04:00
1d263c4dd6 Vendor github.com/mittwald/go-powerdns 2020-06-02 06:53:41 -04:00
968ef8de7b .gitignore /zones not zones 2020-06-02 06:52:21 -04:00
97d91cda4c Implement a simple lexagraphic sort. (#755) 2020-05-30 12:03:33 -04:00
5723f021fd Remove/update obsolete files 2020-05-30 11:08:30 -04:00
4713bbad7d Rebase and regenerate 2020-05-30 11:06:13 -04:00
f91696803c Updated integration tests 2020-05-30 11:06:13 -04:00
9652ef11a7 rebased and regenerated 2020-05-30 11:06:13 -04:00
367a53d34f Regenerated documentation matrix 2020-05-30 11:06:13 -04:00
762aaf0ce1 Added generated files 2020-05-30 11:06:13 -04:00
e57eaccac9 Merge 2020-05-30 11:06:13 -04:00
2e8589e4ce Added DS for cloudflare provider with tests 2020-05-30 11:06:13 -04:00
c0354a585d DS: More cleanups 2020-05-30 11:06:12 -04:00
a89ab89ab6 Fix the merge mess I made with the DS merge (#754)
* DS: More cleanups

* Added DS for cloudflare provider with tests

* Merge

* Added generated files

* Regenerated documentation matrix

* rebased and regenerated

* Updated integration tests

* Rebase and regenerate

* More cleanups

Co-authored-by: Robert Koch <robert@kochie.io>
Co-authored-by: Nicolai Ehemann <nicolai.ehemann@enerko-informatik.de>
2020-05-30 11:05:54 -04:00
87a5c4b339 New RTYPE: DS records now supported! (#753)
Thanks to @haraldkoch for starting this, @McNetic for picking it up.

* Added DS record type

* Added DS for cloudflare provider with tests

* Removed DS validation, fixed parse test

* Added generated files

* Added dnsimple ds record

* Regenerated documentation matrix

* rebased and regenerated

* Updated integration tests

* Rebase and regenerate

* Enable DS record type for provider desec

* Added DS record type

* Added DS for cloudflare provider with tests

* Removed DS validation, fixed parse test

* Added generated files

* Added dnsimple ds record

* Regenerated documentation matrix

* rebased and regenerated

* Updated integration tests

* Rebase and regenerate

* Enable DS record type for provider desec

* Rebase and fixes

Co-authored-by: Robert Koch <robert@kochie.io>
Co-authored-by: Nicolai Ehemann <nicolai.ehemann@enerko-informatik.de>
2020-05-30 10:40:21 -04:00