23 Commits

Author SHA1 Message Date
DL6ER c12c47cf58 Add EDE 15 from upstream => Blocked detection + new query type representing this
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-09-14 10:17:20 +02:00
DL6ER 17b9bfcc34 If multiple records are returned but at least one is a blocked IP address, the entire query should be blocked. This is already the case but this commit adds an explicit CI test for this desired behavior.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-08-21 20:14:51 +02:00
DL6ER 070544bde1 Implement DNS caching for queries blocked upstream (NXDOMAIN + no RA, 0.0.0.0/::, and known Umbrella IP blocking pages) accompanied with suitable CI testing. This change improves handling of externally blocked queries in two ways:
1. Once we know the domain is externally blocked, we don't forward it again for the same client (it is currently forwarded each time)
2. We can recognize cache content with the specified addresses/flags as being upstream blocked and don't return them as "OK (cached)" through the API/in the database

Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-08-21 20:14:51 +02:00
DL6ER 260456c29a Implement fully self-contained VALID/BOGUS DNSSEC zones for our CI tests
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-07-22 14:05:16 +02:00
DL6ER 8b3c39015d Add RFC 8482 filtering (Providing Minimal-Sized Responses to DNS Queries That Have QTYPE=ANY) by default
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-02-13 09:51:53 +01:00
DL6ER 470689da47 Add antigravity and /api/search related CI tests
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-10-07 21:52:42 +02:00
DL6ER f8b8e63044 Add antigravity (subscribed allowlists with wildcard support)
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-09-15 21:39:04 +02:00
DL6ER 5e2e6e6fa4 Merge branch 'development' into new/http
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-02-01 21:48:41 +01:00
DL6ER 49e1c74455 New syntax: querytype=A accepts now also a list (like querytype=A,AAAA,MX). You can use the exclamation mark as before for inversion (querytype=!A) matches everything BUT type A queries. This has now been extended to be able to invert a list, too (like (querytype=!A,AAAA matches everything BUT A and AAAA queries)
Signed-off-by: DL6ER <dl6er@dl6er.de>
2023-01-26 20:11:55 +01:00
DL6ER a9ea62a3fc Merge branch 'development' into new/http
Signed-off-by: DL6ER <dl6er@dl6er.de>
2022-12-30 15:12:14 +01:00
DL6ER 84085bebcd Tests: CNAME inspection: NODATA CNAME targets are blocked
Signed-off-by: DL6ER <dl6er@dl6er.de>
2022-09-05 20:07:19 +02:00
DL6ER dbd2cb722c Tests: Explicityl disable DNSSEC for zone ftl.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2022-07-30 18:08:02 +01:00
DL6ER d79abd3000 Adjustments for upgrade to PowerDNS v4.6
Signed-off-by: DL6ER <dl6er@dl6er.de>
2022-07-30 18:08:02 +01:00
DL6ER 26ccee3f4c Merge branch 'development' into new/http
Signed-off-by: DL6ER <dl6er@dl6er.de>
2022-06-29 11:12:59 +02:00
Adam Warner 671a438c4d Fix some spellings, ignore others
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2022-04-22 18:26:31 +01:00
DL6ER fd2a633d20 Use FTLs embedded SQLite3 engine for the tests instead of relying whatever the system may be providing
Signed-off-by: DL6ER <dl6er@dl6er.de>
2022-01-18 15:37:42 +01:00
DL6ER d2db645f71 Update tests
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-11-02 15:09:38 +01:00
DL6ER c0570c51c2 Merge branch 'development' into new/http
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-11-02 09:53:13 +01:00
Petr Menšík 233777758e Use Fedora's pdns path and local forwarders
pdns-recursor config path is different from both Debian and Alpine.
Detect also Fedora specific path.

Signed-off-by: Petr Menšík <pemensik@redhat.com>
2021-10-20 12:26:31 +02:00
Adam Warner f7f349b9e0 Split workflow up into distinct jobs, each depending on the previous part
1 - Define some outputs to be used by the other jobs
 2 - Build and Test x86_64/32 binaries - if not pull request, attach binaries to workflow run as artifacts
 3 - Build arm/aarch64 binaries - if not pull request, attach binaries to workflow run as artifacts
 4 - If not a pull request, download binaries from artifact store, and upload binaries via SSH. If it is a release, then attach binaries to release

Move from scp-action action to just running the plain sftp command
pdns-doc is now included in the build container so no need to add it in the test setup.

Co-authored-by: DL6ER <DL6ER@users.noreply.github.com>
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2021-10-10 21:21:19 +01:00
DL6ER e625d197d9 Inline local DNS tests
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-10-10 16:17:13 +02:00
DL6ER c3bf7d216d Special handling for Alpine added, almost everything is different. Alpine is not even able to start pdns unless you create some extra directories for it.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-10-10 13:06:12 +02:00
DL6ER 02154d2023 Add powerDNS to the CI testing suite to serve zone ftl. locally
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-10-10 12:08:41 +02:00