-
Andrey Meshkov authored
Merge in DNS/dnsproxy from doh3server to master Squashed commit of the following: commit dd7f6ecb0264afd16ee6fcd47ff7bafe06797645 Author: Andrey Meshkov <am@adguard.com> Date: Tue Sep 20 14:17:51 2022 +0300 upstream: fix review comments commit 3b887f614163f4900f75807c990ad2a5d354d3b5 Author: Andrey Meshkov <am@adguard.com> Date: Tue Sep 20 00:14:19 2022 +0300 proxy: added address validation logic commit b29dc3c3b6746ad5be921941904f16ab228b1dab Author: Andrey Meshkov <am@adguard.com> Date: Mon Sep 19 23:31:21 2022 +0300 proxy: fix review comments, general improvements commit 79f47f54adcd30a68a9f7bc0111025ae0a32d99d Author: Andrey Meshkov <am@adguard.com> Date: Mon Sep 19 20:43:26 2022 +0300 upstream: several improvements in DoH3 and DoQ upstreams The previous implementation weren't able to properly handle a situation when the server was restarted. This commit greatly improves the overall stability. commit 59cf92b6097d78acf6f088057134888993f7ca43 Author: Andrey Meshkov <am@adguard.com> Date: Sat Sep 17 02:51:40 2022 +0300 proxy: remoteAddr for DoH depends on HTTP version now commit 804ddedd2807870b7d36dae5ce9857de3a7f7286 Author: Andrey Meshkov <am@adguard.com> Date: Sat Sep 17 01:53:32 2022 +0300 proxy: added HTTP/3 support to the DNS-over-HTTPS server implementation The implementation follows the old approach that was used in dnsproxy, i.e. it adds another bunch of "listeners", the new ones are for HTTP/3. HTTP/3 support is not enabled by default, it should be enabled explicitly by setting HTTP3 field of proxy.Config to true. The "--http3" command-line argument now controls DoH3 support on both the client-side and the server-side. There's one more important change that was made while refactoring the code. Previously, we were creating a separate http.Server instance for every listen address that's used. It is unclear to me what's the reason for that since a single instance can be used to serve on every address. This mistake is fixed now.
a03a56c8
Loading