Commit Graph

144 Commits

Author SHA1 Message Date
Shreyas Zare
a2e8f7ff5e DnsWebService: Implemented multiple block list url support. Added total allowed & block zones stats. Implemented allowed zone api. In memory serialization done for zone and config saving to avoid overwriting file on disk with corrupt data. 2018-10-05 23:57:26 +05:30
Shreyas Zare
1a1f818f3b StatsManager: implementation completed with testing for hourly, daily, weekly, monthly & yearly stats. 2018-10-05 23:54:04 +05:30
Shreyas Zare
deebb64a2c DnsServer: allowed zone added to override blocked zone. retries value set to 1 & timeout parameter added. Recursive query lock implemented to limit only one thread perform recursive resolution for a given domain & type query. Blocked zone change added to never return NameError. Block zone object property set method implemented to allow swapping new zone. 2018-10-05 23:52:43 +05:30
Shreyas Zare
2863e76a99 Zone: added domain name validation check. DeleteZone() return value updated to bool. AuthoritativeZoneExists() & DeleteSubZones() methods added. IsAuthoritative property added. 2018-10-05 23:48:48 +05:30
Shreyas Zare
cd4340a2c1 DnsWebService: adding 0.0.0.0 A record to block zone so that the response gets cached and less requests hit the server. 2018-10-01 23:06:27 +05:30
Shreyas Zare
e17d64ff17 DnsServer: blocked response tagging implemented. 2018-10-01 00:17:58 +05:30
Shreyas Zare
9c62ac9dff webapp: added Become A Patron footer link. 2018-09-30 23:46:54 +05:30
Shreyas Zare
422f827254 DnsWebService: reimplemented obsolete file format support to avoid issues when upgraded from older versions. 2018-09-30 23:43:04 +05:30
Shreyas Zare
82f56a3e1a StatsManager: remove old data from hourly cache done. 2018-09-30 23:32:56 +05:30
Shreyas Zare
a9af294ba6 webapp: implemented dashboard stat type controls. 2018-09-30 23:23:44 +05:30
Shreyas Zare
38333b14d6 DnsWebService: implemented getStats api with type parameter. 2018-09-30 23:23:06 +05:30
Shreyas Zare
0c85b3308f StatsManager: implemented hourly stat file. implemented last day, last week and last month stats method. 2018-09-30 23:22:21 +05:30
Shreyas Zare
b5abefa65e minor dashboard chart enhancements. 2018-09-30 13:44:57 +05:30
Shreyas Zare
cdd73b4a44 webapp: implemented dashboard. 2018-09-30 00:25:39 +05:30
Shreyas Zare
cd660f2db3 DnsWebService: implemented StatsManager and getStats api. 2018-09-30 00:23:37 +05:30
Shreyas Zare
faed8468ea DnsServer: implemented StatsManager. 2018-09-30 00:22:04 +05:30
Shreyas Zare
b94002c401 StatsManager: added stats manager class with last hour stats counters. 2018-09-30 00:21:21 +05:30
Shreyas Zare
fca051eaae LogManager: added Write(Exception ex) method. 2018-09-30 00:20:15 +05:30
Shreyas Zare
ce53ad08fc minor changes 2018-09-22 20:16:43 +05:30
Shreyas Zare
83ca65d722 DnsWebService: added missing StopBlockListUpdateTimer() when server stops. 2018-09-22 20:16:31 +05:30
Shreyas Zare
83d25a707f WebApp: reseting quick select options. 2018-09-22 17:18:43 +05:30
Shreyas Zare
69164b3cfa DnsServer: tcp timeout values reduced. 2018-09-22 17:10:52 +05:30
Shreyas Zare
515b56a87b WebApp: quick select forwarders option added. 2018-09-22 17:10:08 +05:30
Shreyas Zare
a9ba8b7119 WebApp: custom editable list added with block list options. 2018-09-22 15:51:23 +05:30
Shreyas Zare
5bacfe7ab5 DnsWebService: Updated block list timer initial interval to 5 sec so that settings get applied quickly. Flushing blocked zone when block list settings are updated. Added missing save block zone file after flushing. 2018-09-22 15:40:21 +05:30
Shreyas Zare
821d4166c4 WebApp: Blocked Zones UI tab added. Block List URL settings added. 2018-09-22 15:06:28 +05:30
Shreyas Zare
6ddaa7ad48 DnsWebService: Added blocked zone api. Blocked zone file management done. Automatic block list update from URL feature added. 2018-09-22 15:04:56 +05:30
Shreyas Zare
48e37e2658 Zone: DeleteZone() deleteSubZone option added. 2018-09-22 15:01:52 +05:30
Shreyas Zare
845b745b0d DnsServer: blocked zone implemented to allow blocking. 2018-09-16 16:17:14 +05:30
Shreyas Zare
25e1d05ec5 index.html: added forgot password link with instructions modal. 2018-09-15 13:42:16 +05:30
Shreyas Zare
b54ab9afc5 main.js: added URI encoding for data parameters to avoid breaking html. 2018-09-15 13:41:38 +05:30
Shreyas Zare
b4022545cd DnsWebService: AcceptWebRequestAsync() error logging added. Flush cache logging added. Fixed update check bug which was always marking updateAvailable as false due to missing check. Password reset process added. Web service stop process changed to use thread abort. 2018-09-15 13:40:29 +05:30
Shreyas Zare
af2a226006 Zone: fixed bug in GetClosestAuthority() by enabling CNAME bypass for reading SOA record. Empty response from authority name server caching done when SOA is missing due to bad config. 2018-09-15 13:16:26 +05:30
Shreyas Zare
ec6dec6b82 assembly version updated to 1.3.3 for release 2018-08-18 11:59:15 +05:30
Shreyas Zare
abaa9ba7e1 DnsServer: Multiple udp read threads feature added for better performance. 2018-08-18 11:45:41 +05:30
Shreyas Zare
41af4ba69f DnsServer: SocketException (0x80004005) fixed in ReadUdpQueryPacketsAsync() caused by ICMP TTL expiry by handling SocketError.NetworkReset case. 2018-08-16 23:28:45 +05:30
Shreyas Zare
40d04390c3 added project url 2018-08-15 18:56:04 +05:30
Shreyas Zare
214c939334 DnsServer: Increased threadpool min threads based on cpu cores. Increased connection limit to handle DoH load. Fixed udp datagram too long bug. Using thread abort to stop listener threads when stop() is called since the thread wont exit without reading a packet. 2018-08-15 18:55:53 +05:30
Shreyas Zare
a233fdc5a7 project referencing issues fixed. 2018-08-11 12:10:29 +05:30
Shreyas Zare
352a2a1999 DnsServer: removed obsolete code usage. Code refactoring done. Fixed tcp response reading bug caused by small recv buffer size than the packet length. ProcessAuthoritativeQuery() updated to do recursion if auth zone has delegated subdomain. 2018-08-11 12:09:44 +05:30
Shreyas Zare
3d329b9f27 DnsWebService: removed obsolete code usage. Using simple dns cache for recursive resolve queries. 2018-08-11 12:04:46 +05:30
Shreyas Zare
68fd83655f Zone: QueryAuthoritative() changes done to check for closest authority at start and refuse response if not authorized. Caching changes done for empty response without authority SOA record. Code refactoring done. 2018-08-11 12:03:16 +05:30
Shreyas Zare
393066610f DnsServerCore: assembly version updated to 1.3.2.1. 2018-08-05 17:07:09 +05:30
Shreyas Zare
4486ee5097 DnsWebService: ResolveQuery() changes done to avoid using default system dns servers. 2018-08-05 17:06:41 +05:30
Shreyas Zare
42bac1aa43 DnsServer: added internal method to access cache. 2018-08-05 17:05:28 +05:30
Shreyas Zare
2bec8a8364 DnsServerCore: assembly version updated to 1.3.2 2018-08-04 15:20:29 +05:30
Shreyas Zare
c9171ded8e minor refactoring change 2018-08-04 15:11:37 +05:30
Shreyas Zare
4a342ef2ae web app: added UI setting for recursion only for private networks option. 2018-08-04 15:11:15 +05:30
Shreyas Zare
bc82254542 DnsWebService: implemented backend support for recursion only for private network option. 2018-08-04 15:09:21 +05:30
Shreyas Zare
59c4800e23 DnsServer: added recursion only for private network option. 2018-08-04 15:07:55 +05:30