Commit Graph
100 Commits
Author SHA1 Message Date
Revertron 6950600bdd On some Linux machines ALFIS is unable to get primary monitor (what do you expect from Linux?). Fixed that. 2025-10-28 13:24:34 +01:00
Revertron a29a6190fb Fix DNS domain name case preservation and DNS 0x20 encoding issues.
Fixed DNS 0x20 encoding bug in worker threads and removed automatic lowercasing in DNS buffer parsing to preserve case from authoritative sources. Implemented case-insensitive lookups for cache and blockchain while ensuring restoration of the original client query case in all response paths instead of returning randomized DNS 0x20 case from upstream servers.
2025-10-28 13:11:56 +01:00
Revertron b10402ee1e Updated README. 2025-10-28 00:25:32 +01:00
Revertron dbf3df9ff9 Updated CI for release building. 2025-10-27 22:55:59 +01:00
Revertron 6b3f88f6bb Updated dependencies. Updated adblock.txt. 2025-10-27 22:44:24 +01:00
Revertron 664715f02b CI fixes. 2025-10-27 22:18:36 +01:00
Revertron 8e11f63479 Fixed centering of the window. 2025-10-27 22:09:11 +01:00
Revertron 8a0677caf2 Added automatic config migration for incorrect test port 42440 → 4244
Automatically fixes net.listen port for public nodes that have the incorrect
test port 42440. Migration preserves comments and formatting by using text
replacement instead of TOML re-serialization.
2025-10-27 14:56:32 +01:00
Revertron 5de0341ab4 Enhanced DNS security with ephemeral ports and DNS 0x20 encoding
Significantly improve DNS client security against cache poisoning attacks through multiple defense layers:

Security Improvements:
- Bind UDP sockets to OS-assigned ephemeral ports (0.0.0.0:0) instead of predictable random ports, eliminating port-based attack vectors
- Implement DNS 0x20 encoding with strict case validation, adding 10-15 bits of entropy per query by randomizing domain name case
- Randomize transaction ID starting point using AtomicU16 for better entropy distribution

Attack difficulty increased from ~16 bits (65K attempts) to ~42-47 bits
(4.4-140 trillion attempts), making spoofing 1,000x to 32,000x harder.

Configuration:
- Add 'enable_0x20' option to DNS settings (default: true)
- Users can disable for compatibility with legacy resolvers if needed
- Feature is configurable via alfis.toml
2025-10-27 14:39:47 +01:00
Revertron d3cdf6ea76 Fixed warnings in some tests. 2025-10-27 01:37:38 +01:00
Revertron 81f5568957 Updated all dependencies. 2025-10-27 01:22:02 +01:00
Revertron 61f2d89ef1 Fixed GLUE records return on NS requests. 2025-10-23 22:48:48 +02:00
Revertron 429563eee9 Another try to build for macOS. 2025-10-23 21:46:16 +02:00
Revertron fc7360ea00 Another try to build for macOS. 2025-10-23 21:43:22 +02:00
Revertron 914e8b6d67 Another try to build for macOS. 2025-10-23 21:35:45 +02:00
Revertron 4169ede074 Added DNS timeouts here and there.
Fixed macOS and Ubuntu pipelines.
2025-10-23 21:26:03 +02:00
Revertron d2b7080c96 Many DNS fixes! 2025-10-22 22:55:58 +02:00
Revertron 3f36f4ede3 Small DNS fix. 2024-11-18 12:43:18 +01:00
Revertron 4945f18fae A lot of DNS fixes. 2024-11-18 00:44:04 +01:00
Revertron 2f7df4859d Small changes, updated dependencies. 2024-11-17 13:39:23 +01:00
Revertron 95188ec0bd Updated readme. 2024-07-29 20:04:59 +02:00
Revertron dd12397c39 Removed mips and mipsel from build matrix. 2024-07-13 13:39:22 +02:00
Revertron 7c5cc1879b Another fix of CI for releases. 2024-07-12 15:02:32 +02:00
Revertron 083d304e61 Last (I hope) fix of CI for releases. 2024-07-12 14:50:50 +02:00
Revertron b4f68c6a05 Another fix of CI for releases. 2024-07-12 14:42:20 +02:00
Revertron eebd53b177 Fixed linux builds. 2024-07-12 14:31:31 +02:00
Revertron 38a0239f19 Fixed CI for releases. 2024-07-12 13:50:20 +02:00
Revertron e7eb383a35 Small network fix. 2024-07-10 22:46:44 +02:00
Revertron de46148e01 Fixed UI for TXT records, updated all dependencies, made better connectivity, added log info to network thread. 2024-07-10 20:15:33 +02:00
Revertron 080d4f3eb2 More dependencies updates. 2024-01-11 01:49:06 +01:00
Revertron a92799fb2d Updated crypto dependencies. 2024-01-11 01:32:18 +01:00
Revertron b74b0e00a0 Added a debug system to catch some deadlock. 2023-12-03 02:11:40 +01:00
Revertron 709125752f Fixed linux builds. 2023-10-04 00:54:08 +02:00
Revertron aa500b3ad8 Added Windows service mode! 2023-06-08 00:07:15 +02:00
Revertron 09303149d9 Attempt to eliminate stale peers. 2023-05-27 13:09:06 +02:00
Revertron e2f0fdf2d8 Fixed TLSA records resolution. 2023-03-27 22:58:40 +02:00
Revertron 8d36119332 Small UI fix. 2023-03-18 18:15:04 +01:00
Revertron 829ee753a0 Stability fixes. 2023-03-18 18:07:30 +01:00
Revertron 167b6db426 Updated sqlite dependency. 2023-03-01 13:57:08 +01:00
Revertron 748ec8273f Updated dependencies. 2023-03-01 13:18:18 +01:00
Revertron 17456e7a6c Optimized failing nodes banning. 2023-01-30 15:19:36 +01:00
Revertron c199a62a04 Optimized network connections (added write timeouts). 2023-01-30 14:40:59 +01:00
Revertron aa246571a7 Fixed unimportant warning, and changed some constants in DoH client. 2022-11-03 17:55:32 +01:00
Revertron 0d50fc44c6 Updated adblock list. 2022-11-03 16:59:13 +01:00
Revertron b3d077c2a0 Fixed max-nodes constant, changed by mistake. 2022-11-03 14:48:23 +01:00
Revertron e5657d6802 Reworked DNS-resolver. 2022-11-03 14:46:35 +01:00
Revertron 287e88c7e2 Updated dependencies. 2022-11-03 13:56:17 +01:00
Revertron 9bf98214d4 Network optimizations, part 2. 2022-09-06 20:31:01 +02:00
Revertron 74b84f0e65 Network optimizations. 2022-09-06 19:17:04 +02:00
Revertron a36860e46c More dependency updates. 2022-09-05 20:22:28 +02:00
Revertron 609cbcf819 Updated dependencies. 2022-09-05 19:19:19 +02:00
Revertron a612f73649 Fixed the consensus about expired domains. 2022-09-05 19:12:46 +02:00
Revertron beb09ed01c Fixed chatty logging in debug mode. 2022-09-05 19:04:41 +02:00
Revertron 3949bd046b Fixed stale connections. 2022-09-05 15:35:28 +02:00
Revertron 8cfc48e9c0 Small refactoring and fix LF escape in domain data. 2022-07-26 18:09:37 +02:00
Revertron 492bb4e16d Updated dependencies and incremented version. 2022-07-25 12:02:13 +02:00
Revertron c8f68cb857 A lot of optimization for block checks. Will speed up initial sync by about 15-20% of time. 2022-07-25 11:50:08 +02:00
Revertron cd311f7c9a Build fix. 2022-07-11 14:51:16 +02:00
Revertron 20054e4be7 Optimized p2p communication. Disabled connections from v0.6.*. Updated dependencies. 2022-07-11 14:44:24 +02:00
Revertron ef5cef290e Fixed block-spam over the p2p if there is no consensus. 2022-07-11 02:17:30 +02:00
Revertron a3b262159f Updated dependencies. 2022-07-10 23:09:58 +02:00
Revertron a27b6cc75c Fixed block precedence calculation. 2022-07-10 23:07:59 +02:00
Revertron a13c824f7d Updated dependencies, fixed connection drop for banned nodes. 2022-06-29 19:02:11 +02:00
Revertron f9fb935264 Fixed ban mechanism, updated dependencies. 2022-06-09 16:57:57 +02:00
Revertron 50d83b848a Fixed local timezone setting in logger. 2022-05-12 19:26:23 +02:00
Revertron 27ba7c5710 Fixed signers' calculation once more. 2022-05-12 18:49:54 +02:00
Revertron 3e1f93f988 Fixed very chatty logging of network status. 2022-05-12 16:42:05 +02:00
Revertron 72a39fad33 Small HTML fix. 2022-05-12 16:14:23 +02:00
Revertron 880d75fc53 Fixed logging time format in tests. 2022-05-12 15:54:15 +02:00
Revertron 9ff0d2d8e8 Fixed logging in tests. 2022-05-12 15:35:26 +02:00
Revertron e9aad8905c Updated dependencies. 2022-05-12 15:17:25 +02:00
Revertron 410bc9b7e4 Fixed signers' calculation loop. Fixed block checks. Added trace logging level. Updated dependencies. 2022-05-12 14:50:31 +02:00
Revertron 5b5943a4aa Decoupled domain records change from domain renewal. 2022-04-13 13:02:58 +02:00
Revertron 594dabcab8 Implemented resolution of domain records through NS-servers. Updated dependencies. 2022-04-01 13:03:32 +02:00
Revertron fe43117a03 Fixed TXT records resolve. 2022-03-10 16:28:22 +01:00
Revertron fd9da6f6fd Updated dependencies. 2022-03-10 16:11:17 +01:00
Revertron 542be0ea54 Fixed #218. 2022-02-20 15:50:53 +01:00
Revertron bfebdce19c Merge remote-tracking branch 'origin/master' 2022-02-16 22:59:18 +01:00
Revertron eec8a2d0a6 Updated dependencies. 2022-02-16 22:58:06 +01:00
Revertron 58e230a504 Updated dependencies. 2022-02-16 21:28:30 +01:00
Revertron c088469390 Merge remote-tracking branch 'origin/master' 2022-01-16 23:39:48 +01:00
Revertron efa3e3f79d Small p2p optimizations. 2022-01-16 23:39:41 +01:00
Revertron 5b420af312 Merge remote-tracking branch 'origin/master' 2022-01-12 15:56:26 +01:00
Revertron b8d505da2e Sped up P2P reconnections after sleep. Ensured successfull peer resolution. Updated dependencies. 2022-01-12 15:56:16 +01:00
Revertron fceaa2eaac Added docker instruction to readme. 2022-01-04 14:04:54 +01:00
Revertron 63d3593e10 Fixed default AdGuard DNS IP. 2022-01-03 22:08:59 +01:00
Revertron b2aa001dc5 Fixed build warning on linux. 2022-01-03 22:06:41 +01:00
Revertron f7799fefd6 Updated dependencies. 2022-01-03 20:16:48 +01:00
Revertron 6ce092f184 Some network refactoring, updated dependencies. 2022-01-02 15:10:33 +01:00
Revertron c111da6250 Fixed network message reading. 2021-12-25 22:15:35 +01:00
Revertron 797584c516 Fixed multiple clippy warnings. 2021-12-25 18:40:36 +01:00
Revertron d776cca5b3 Updated dependencies and README. 2021-12-22 20:28:05 +01:00
Revertron 0e8d39751e Changed the way how DNS-server start error is handled. Now ALFIS starts normally, and the error is shown in GUI. 2021-11-20 16:11:05 +01:00
Revertron ab742885dd Optimized logging, fixing #175. 2021-11-15 17:38:12 +01:00
Revertron e5419541aa Updated dependencies. 2021-11-15 13:13:00 +01:00
Revertron e29c58bec3 Fixed logging to file on Windows without console window. 2021-10-25 17:22:50 +02:00
Revertron 3a6932e5b2 Fixed UI start without console window on Windows on Rust 1.56.0. 2021-10-24 16:48:27 +02:00
Revertron 5a512af524 Updates CI config. 2021-10-22 11:59:50 +02:00
Revertron 0f30d6852f Updated dependencies, incremented version number. 2021-10-22 11:27:57 +02:00
Revertron 66242464c4 Removed tight restrictions of blocks sync. Sped up initial sync a lot. 2021-10-08 09:15:12 +02:00