wikidough: add support for the durum check service
This commit introduces support for durum, the Wikidough check service
that will run on check.wikimedia-dns.org. The purpose of this service is
similar is to allow users to check if their stub/browser is configured
to use/is Wikidough (DoH or DoT). This commit makes the following
changes:
- In geo-maps, we introduce checkdoh-map and map queries coming from the Wikidough hosts, ignoring the ECS option (that Wikidough enables for queries to Wikimedia's auth servers) so that we can see the recursor source address. If a request is originating from one of the Wikidough hosts, we mark it as "yes", otherwise we say it's a "no".
- In geo-resources, we return different A records for "yes" (using Wikidough), or "no" (not using Wikidough), for checkdoh-map.
- The rest of the logic takes places in the durum web application, where a user requests <uuid>.check.wikimedia-dns.org. Depending on if they are using Wikidough or not, they are redirected to the "yes" or "no" IP, where we return different JSON results that are shown on the check.wikimedia-dns.org page.
This solution helps us come up with a check service that is "stateless"
and in which we don't have to save user data or queries to gdnsd to
figure out what recursor they are using.
Change-Id: I5a9533d4843e1839373c255c19f06d9ee3e1a6aa