Commit Graph

739 Commits

Author SHA1 Message Date
Shreyas Zare
e6b3edd412 CacheZoneManager: removed unused feature. 2023-08-26 12:32:18 +05:30
Shreyas Zare
528de20d2e CacheRecordInfo: removed unused feature. 2023-08-26 12:31:50 +05:30
Shreyas Zare
4a7e770d2f AuthZoneManager: fixed issue in IXFR which caused empty node to remain in the zone tree. 2023-08-13 18:48:20 +05:30
Shreyas Zare
db1f97c2c9 DnsServer: Implemented UDP and TCP over PROXY protocol. 2023-08-12 13:04:47 +05:30
Shreyas Zare
481a92b494 PrimarySubDomainZone: Fixed issue of duplicate records in zone history. 2023-08-12 13:03:38 +05:30
Shreyas Zare
fee08180f9 DnsServer: updated TLS certificate implementation to allow the TLS handshake to send the cert chain for DoT, DoH, & DoQ. Updated ProcessAPPAsync() to fix issue with rcode for wildcard cases. 2023-07-29 13:30:46 +05:30
Shreyas Zare
aa0a7ef6f6 DnsServer: Updated code to write more specific error log for dynamic updates security policy. 2023-07-02 15:45:11 +05:30
Shreyas Zare
9cf6168aa8 AuthZoneManager: fixed minor issues in ConvertZoneType(). 2023-07-02 15:44:12 +05:30
Shreyas Zare
74ab6b9596 DnsServer: removed RD flag check for conditional forwarder zones. 2023-06-25 19:07:04 +05:30
Shreyas Zare
350f982d5f AuthZoneManager: updated ResolveAdditionalRecords() to prevent duplicate entries. Implemented ConvertZoneType() to allow converting zone types. Updated Query() to fix issue with how APP records being queried for closest/apex when not needed. 2023-06-25 17:30:18 +05:30
Shreyas Zare
266618a026 CacheZoneManager: updating default failure TTL to 10 sec. Updated ResolveAdditionalRecords() to prevent duplicate entries. 2023-06-25 17:25:51 +05:30
Shreyas Zare
c0c0a5c396 ApexZone: Updated notification implementation to retry after SOA RETRY seconds to attempt to automatically recover from the notify failure. Updated NotifyFailed to return list of failed name servers. 2023-06-25 17:24:12 +05:30
Shreyas Zare
744c71b401 AuthZoneInfo: Updated NotifyFailed to return list of failed name servers. 2023-06-25 17:12:21 +05:30
Shreyas Zare
2e376513a8 StatsManager: updated implementation to gracefully handle errors caused by corrupt stats files. 2023-05-27 12:35:56 +05:30
Shreyas Zare
560567a79e DnsServer: updated ProcessDoHRequestAsync() to make the accept header optional. Updated RecursiveResolveAsync() to include extended dns error in response. 2023-05-27 12:34:28 +05:30
Shreyas Zare
aa950351c0 DnsServer: updated ProcessUdpRequestAsync() to remove glue for SRV, SVCB and HTTPS along with MX when response is getting truncated. Updated PostProcessQueryAsync(), RecursiveResolveAsync(), and PrepareRecursiveResolveResponse() to support ECS for all record types. 2023-05-20 18:08:18 +05:30
Shreyas Zare
f4f2529b54 CacheZone: updated implementation to support ECS for all record types. 2023-05-20 18:04:59 +05:30
Shreyas Zare
e2bcfb3e9a CacheZoneManager: updated CacheRecords() to support ECS for all record types. Updated GetAdditionalRecords() and ResolveAdditionalRecords() to support SVCB and HTTPS records. Updated Query() to support glue records for SVCB and HTTPS records. 2023-05-20 18:03:45 +05:30
Shreyas Zare
abf7435be7 AuthZoneManager: updated GetAdditionalRecords() and ResolveAdditionalRecords() to support SVCB and HTTPS records. Updated DeleteRecord() and DeleteRecords() to return bool. Updated Query() to support SVCB and HTTPS glue records. 2023-05-20 18:01:52 +05:30
Shreyas Zare
78979c3a46 DnsServer: Updated ProcessAuthoritativeQueryAsync() to fix conditional forwarder recursion condition to allow conditional forwarding when recursion is denied in settings but is desired by the request. 2023-05-01 19:57:08 +05:30
Shreyas Zare
3bc39fc28a DnsServer: updated error message to include question. 2023-04-29 13:33:24 +05:30
Shreyas Zare
46d4e17856 DnsServer: Implemented socket pool feature for port randomization on windows platform. Updated AuthoritativeQueryAsync() to check the auth zone before querying DNS apps. Updated RecursiveResolveAsync() and ConditionalForwarderResolveAsync() to support conditional forwarding client subnet. Updated DoH web server to serve unknown file types for certbot webroot HTTP challenge. Fixed issue in ServerDomain property when invalid domain name was set. 2023-04-23 16:24:45 +05:30
Shreyas Zare
79ae0c5632 PrimaryZone: implemented soa serial date scheme support. 2023-04-23 16:20:35 +05:30
Shreyas Zare
6554367ad7 AuthZone: updated RefreshSignatures() to fix RRSIG check. Updated GetUpdatedNSecRRSet() to simplify implementation. Updated CreateNSec3RRSet() and GetPartialNSec3Record() to fix bug in NSEC3 type list. 2023-04-23 16:19:33 +05:30
Shreyas Zare
216695a3cd CacheZone: added support for conditional forwarding client subnet. 2023-04-23 16:15:12 +05:30
Shreyas Zare
1d3a1c5c3b CacheZoneManager: added support for conditional forwarding client subnet. 2023-04-23 16:12:58 +05:30
Shreyas Zare
0e0481d0a1 CacheRecordInfo: added support for conditional forwarding client subnet. 2023-04-23 16:10:27 +05:30
Shreyas Zare
821af41210 AuthRecordInfo: added support for soa serial date scheme. 2023-04-23 16:09:58 +05:30
Shreyas Zare
1361a78ae7 DnsServerInternal: updated code to return new cache object to skip authoritative request handler calls. 2023-04-23 16:09:09 +05:30
Shreyas Zare
a462b3097a DnsServer: Updated ProcessRecursiveQueryAsync() to return rcode from blocked response. 2023-03-18 13:39:23 +05:30
Shreyas Zare
444baf1b03 BlockListZoneManager: using HttpClientNetworkHandler for retries and custom DNS resolution support. 2023-03-18 13:36:56 +05:30
Shreyas Zare
f7a1d80aeb DnsServerInternal: implemented IDnsClient.ResolveAsync(). 2023-03-18 13:35:51 +05:30
Shreyas Zare
0bcb233e1c DnsServer: Updated ProcessUdpRequestAsync() to limit the response side to the configured udp payload size to limit amplification attack issue reported by Xiang Li. Updated ProcessAuthoritativeQueryAsync() to prevent conditional forwarding when request does not have RD flag set as reported by Xiang Li. 2023-03-11 15:17:59 +05:30
Shreyas Zare
611641dced code refactoring changes 2023-03-11 15:14:11 +05:30
Shreyas Zare
0ca9232a52 BlockListZoneManager: updated UpdateBlockListsAsync() to perform http retries. 2023-03-11 15:13:21 +05:30
Shreyas Zare
bbf4a2e773 DnsServer: updated ProcessUdpRequestAsync() to handle truncation for MX response to allow trying once after removing glue records before sending a TC response due to issues with some old mail servers that do not retry over TCP when TC response is received. Updated ProcessRecursiveQueryAsync() to use EDNS request to allow relaying extended DNS error response from blocked zone to client. 2023-03-05 19:26:05 +05:30
Shreyas Zare
157115b48e ResolverDnsCache: minor refactoring change. 2023-03-05 19:22:31 +05:30
Shreyas Zare
03603b1482 BlockedZoneManager: using LoadSpecialPrimaryZones() to bulk load and import to avoid loading delays due to indexing. Minor code refactoring changes done. 2023-03-05 19:18:37 +05:30
Shreyas Zare
5f831ed998 AllowedZoneManager: using LoadSpecialPrimaryZones() to bulk load and import to avoid loading delays due to indexing. Minor code refactoring changes done. 2023-03-05 19:18:09 +05:30
Shreyas Zare
1fc615eeb8 AuthZoneManager: Added LoadSpecialPrimaryZones() methods to allow bulk loading/importing zones. Updated Query() to add isRecursionAllowed parameter to be used to set expected RA flag value. Minor code refactoring changes done. 2023-03-05 19:16:30 +05:30
Shreyas Zare
c1f287528b DnsServer: fixed issue in DNS-over-HTTP private IP check causing 403 with reverse proxy. 2023-02-26 17:26:55 +05:30
Shreyas Zare
ec8dce21cf AuthZoneManager: fixed minor issue when there are no zones. 2023-02-26 17:16:25 +05:30
Shreyas Zare
fa82a737e9 DnsServer: Updated ProcessAuthoritativeQueryAsync() by moving query code into separate AuthoritativeQueryAsync() method. Updated ProcessCNAME(), ProcessANAME(), and CachePrefetchSamplingTimerCallback() to use AuthoritativeQueryAsync(). Updated "this-server" implementation to move checking code into RecursiveResolveAsync(). Code refactoring changes done. 2023-02-25 13:10:42 +05:30
Shreyas Zare
a53d5df19c BlockListZoneManager: updated implementation of allowed list by having a separate allowed zone. Updated parser to detect inline comment. Added IsAllowed() method. Updated Query() to check count before query. 2023-02-25 13:06:04 +05:30
Shreyas Zare
d62483bd51 BlockedZoneManager: updated Query() to check count before query. 2023-02-25 13:04:25 +05:30
Shreyas Zare
cc597d8694 AllowedZoneManager: refactored Query() to IsAllowed(). 2023-02-25 13:03:40 +05:30
Shreyas Zare
089634f1f3 DnsServer: setting default blocking type to NX domain. Implemented independent query task scheduler to handle incoming requests. Implemented new DirectQueryAsync() method. 2023-02-18 11:43:37 +05:30
Shreyas Zare
12c63f0907 ResolverDnsCache: refactoring changes. 2023-02-18 11:41:56 +05:30
Shreyas Zare
2e2fd43263 AuthZoneInfo: updated implementation to use values from apex zone reference when it is available. 2023-02-18 11:41:19 +05:30
Shreyas Zare
431b16c1f4 BlockListZoneManager: Updated code to support Adblock plus list file format. 2023-02-18 11:40:11 +05:30