Improve the script to better validate, format and sign everything
This commit is contained in:
parent
0c7ba747f3
commit
a81bdae05b
93
utils/format.py
Executable file
93
utils/format.py
Executable file
@ -0,0 +1,93 @@
|
|||||||
|
#! /usr/bin/env python3
|
||||||
|
|
||||||
|
import sys
|
||||||
|
import os
|
||||||
|
import subprocess
|
||||||
|
from glob import glob
|
||||||
|
|
||||||
|
|
||||||
|
class Entry:
|
||||||
|
name = None
|
||||||
|
description = None
|
||||||
|
stamps = None
|
||||||
|
|
||||||
|
def __init__(self, name, description, stamps):
|
||||||
|
self.name = name
|
||||||
|
self.description = description
|
||||||
|
self.stamps = stamps
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def parse(raw_entry):
|
||||||
|
description = ""
|
||||||
|
stamps = []
|
||||||
|
lines = raw_entry.strip().split("\n")
|
||||||
|
if len(lines) < 2:
|
||||||
|
return None
|
||||||
|
name = lines[0].strip()
|
||||||
|
previous_was_blank = False
|
||||||
|
for line in lines[1:]:
|
||||||
|
line = line.strip()
|
||||||
|
if previous_was_blank is True and line == "":
|
||||||
|
continue
|
||||||
|
previous_was_blank = False
|
||||||
|
if line.startswith("sdns://"):
|
||||||
|
stamps.append(line)
|
||||||
|
else:
|
||||||
|
description = description + line + "\n"
|
||||||
|
|
||||||
|
description = description.strip()
|
||||||
|
if len(name) < 2 or len(description) < 10 or len(stamps) < 1:
|
||||||
|
return None
|
||||||
|
|
||||||
|
return Entry(name, description, stamps)
|
||||||
|
|
||||||
|
def format(self):
|
||||||
|
out = "## " + self.name + "\n\n"
|
||||||
|
out = out + self.description + "\n\n"
|
||||||
|
for stamp in self.stamps:
|
||||||
|
out = out + stamp + "\n"
|
||||||
|
|
||||||
|
return out
|
||||||
|
|
||||||
|
|
||||||
|
def process(md_path, signatures_to_update):
|
||||||
|
print("\n[" + md_path + "]")
|
||||||
|
entries = {}
|
||||||
|
out = ""
|
||||||
|
previous_content = ""
|
||||||
|
|
||||||
|
with open(md_path) as f:
|
||||||
|
previous_content = f.read()
|
||||||
|
c = previous_content.split("\n## ")
|
||||||
|
out = out + c[0].strip() + "\n\n"
|
||||||
|
raw_entries = c[1:]
|
||||||
|
for i in range(0, len(raw_entries)):
|
||||||
|
entry = Entry.parse(raw_entries[i])
|
||||||
|
if not entry:
|
||||||
|
print(
|
||||||
|
"Invalid entry: [" + raw_entries[i] + "]", file=sys.stderr)
|
||||||
|
continue
|
||||||
|
if entry.name in entries:
|
||||||
|
print("Duplicate entry: [" + entry.name + "]", file=sys.stderr)
|
||||||
|
entries[entry.name] = entry
|
||||||
|
|
||||||
|
for name in sorted(entries.keys()):
|
||||||
|
entry = entries[name]
|
||||||
|
out = out + "\n" + entry.format() + "\n"
|
||||||
|
|
||||||
|
if out == previous_content:
|
||||||
|
print("No changes")
|
||||||
|
else:
|
||||||
|
with open(md_path + ".tmp", "wt") as f:
|
||||||
|
f.write(out)
|
||||||
|
os.rename(md_path + ".tmp", md_path)
|
||||||
|
signatures_to_update.append(md_path)
|
||||||
|
|
||||||
|
|
||||||
|
signatures_to_update = []
|
||||||
|
|
||||||
|
for md_path in glob("v2/*.md"):
|
||||||
|
process(md_path, signatures_to_update)
|
||||||
|
|
||||||
|
if signatures_to_update:
|
||||||
|
subprocess.run(["minisign", "-Sm", *signatures_to_update])
|
@ -1,12 +0,0 @@
|
|||||||
#! /usr/bin/env python3
|
|
||||||
|
|
||||||
import sys
|
|
||||||
|
|
||||||
with open(sys.argv[1]) as f:
|
|
||||||
c = f.read().split("\n## ")
|
|
||||||
print(c[0].strip())
|
|
||||||
entries = c[1:]
|
|
||||||
for i in range(0, len(entries)):
|
|
||||||
entries[i] = entries[i].strip()
|
|
||||||
for entry in sorted(entries):
|
|
||||||
print("\n\n## " + entry)
|
|
@ -24,3 +24,4 @@ To use that list, add this to the `[sources]` section of your
|
|||||||
Cloudflare Onion Service
|
Cloudflare Onion Service
|
||||||
|
|
||||||
sdns://AgcAAAAAAAAAACC0WWFtenR5met-s8i0oiShMtYstulWSybPBq-zBUEMNT5kbnM0dG9ycG5sZnMyaWZ1ejJzMnlmM2ZjN3JkbXNiaG02cnc3NWV1ajM1cGFjNmFwMjV6Z3FhZC5vbmlvbgovZG5zLXF1ZXJ5
|
sdns://AgcAAAAAAAAAACC0WWFtenR5met-s8i0oiShMtYstulWSybPBq-zBUEMNT5kbnM0dG9ycG5sZnMyaWZ1ejJzMnlmM2ZjN3JkbXNiaG02cnc3NWV1ajM1cGFjNmFwMjV6Z3FhZC5vbmlvbgovZG5zLXF1ZXJ5
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
untrusted comment: signature from minisign secret key
|
untrusted comment: signature from minisign secret key
|
||||||
RWQf6LRCGA9i56AJQdEgPJoe/vEo+8DPEkd2JNFwhmOquiH68RCWZKyy7yzZzjhyeEhAIwGnOdm4e609vHyw6DQ6WNc1H7OzKQ0=
|
RWQf6LRCGA9i50FioNSlB3OYxNCJYpIr/frciztqTvWHAa1uUmTN2l9F8ZKIa9kM5ixZTxmX1hlpCw229H5qLqq1ANo/HuwqiQ8=
|
||||||
trusted comment: timestamp:1589470698 file:onion-services.md
|
trusted comment: timestamp:1592768550 file:onion-services.md
|
||||||
VKEngfsAh/+D7hVA40SObVlJfDlgFFpoYmBwuPuvXtOJPY8NsbMA3va7aIvn/PuvflDIwS5iesJuj0bFbsKJDg==
|
HBUYH0qcRW3K4oEW/KIine/GrKkcy2S6Xfq9Pb/VzRqXEWo0CujaQ5tGpTKTsycAaHka6CoosGUzmOs54On4CA==
|
||||||
|
@ -28,6 +28,7 @@ Hosted in Switzerland by ibksturm, aka Andreas Ziegler
|
|||||||
|
|
||||||
sdns://AQcAAAAAAAAAEDg1LjUuOTMuMjMwOjg0NDMgwc9XUACwW8JsYh9ez5qiVgrOvwB-vss6f_SyDeC0Oe4YMi5kbnNjcnlwdC1jZXJ0Lmlia3N0dXJt
|
sdns://AQcAAAAAAAAAEDg1LjUuOTMuMjMwOjg0NDMgwc9XUACwW8JsYh9ez5qiVgrOvwB-vss6f_SyDeC0Oe4YMi5kbnNjcnlwdC1jZXJ0Lmlia3N0dXJt
|
||||||
|
|
||||||
|
|
||||||
## ibksturm-ipv6
|
## ibksturm-ipv6
|
||||||
|
|
||||||
dnscrypt-server (nginx - encrypted-dns - unbound backend), DNSSEC / Non-Logged / Uncensored, OpenNIC and Root DNS-Zone Copy
|
dnscrypt-server (nginx - encrypted-dns - unbound backend), DNSSEC / Non-Logged / Uncensored, OpenNIC and Root DNS-Zone Copy
|
||||||
@ -128,3 +129,4 @@ DNSSEC • OpenNIC • Non-logging • Uncensored - hosted on ovh.com.au
|
|||||||
Maintained by publicarray - https://dns.seby.io
|
Maintained by publicarray - https://dns.seby.io
|
||||||
|
|
||||||
sdns://AgcAAAAAAAAADTEzOS45OS4yMjIuNzIgPhoaD2xT8-l6SS1XCEtbmAcFnuBXqxUFh2_YP9o9uDgRZG9oLTIuc2VieS5pbzo0NDMKL2Rucy1xdWVyeQ
|
sdns://AgcAAAAAAAAADTEzOS45OS4yMjIuNzIgPhoaD2xT8-l6SS1XCEtbmAcFnuBXqxUFh2_YP9o9uDgRZG9oLTIuc2VieS5pbzo0NDMKL2Rucy1xdWVyeQ
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
untrusted comment: signature from minisign secret key
|
untrusted comment: signature from minisign secret key
|
||||||
RWQf6LRCGA9i5znQ+l925rdVO5n68WuLFfMfyjX3O2j5bJg0zOTAQfFM9336s4Gy0kvCPNeuzO/4zCnVq2NEzm6d8O/vLJsNPQs=
|
RWQf6LRCGA9i5xLlTeDptDCf4Rn19jfvqA0kf9If+sWoZqZYYy/S99/AVhJKv3W88vbWfBxBBenCdHcwUYltJNIYwd7/trLZeg8=
|
||||||
trusted comment: timestamp:1591107916 file:opennic.md
|
trusted comment: timestamp:1592768550 file:opennic.md
|
||||||
9XpBy7favylbwtcwsJ+zQogQFbvHCLMj8bjcQnPJUQGA9AuMDMc4vet2MhL/H7kiEEPZbPbmi2lD2KQH5EvRAg==
|
C/L7YOhWIRsoXM8OJIy6do58yJu/V4w949fAUpDxcWrp5i38gVXY7YBgDP4EXdOuTrzPN6+0KECgMiiatUVFAQ==
|
||||||
|
@ -33,6 +33,8 @@ CIRA DoH resolvers, blocking trackers, malware, phishing and pornography.
|
|||||||
Operated by the .CA registry. Built by Canadians for Canadians.
|
Operated by the .CA registry. Built by Canadians for Canadians.
|
||||||
https://www.cira.ca/fr/cybersecurity-services/canadian-shield
|
https://www.cira.ca/fr/cybersecurity-services/canadian-shield
|
||||||
|
|
||||||
|
sdns://AgEAAAAAAAAAACA_4zhjTgUQYz3kU8o1CxXOwzmz3Li6nyot0k0QqDj-6x1mYW1pbHkuY2FuYWRpYW5zaGllbGQuY2lyYS5jYQovZG5zLXF1ZXJ5
|
||||||
|
|
||||||
|
|
||||||
## cisco-familyshield
|
## cisco-familyshield
|
||||||
|
|
||||||
@ -150,3 +152,4 @@ Hosted in Paris, running on a 1-XS server donated by Scaleway.com
|
|||||||
Maintained by Frank Denis - https://fr.dnscrypt.info/sfw.html
|
Maintained by Frank Denis - https://fr.dnscrypt.info/sfw.html
|
||||||
|
|
||||||
sdns://AQMAAAAAAAAAEzE2My4xNzIuMTgwLjEyNTo0NDMg32Jzv8dSGSqLWjm8DIWsP_lkRdc2RPZicoJdNVjxof8fMi5kbnNjcnlwdC1jZXJ0LnNmdy5zY2FsZXdheS1mcg
|
sdns://AQMAAAAAAAAAEzE2My4xNzIuMTgwLjEyNTo0NDMg32Jzv8dSGSqLWjm8DIWsP_lkRdc2RPZicoJdNVjxof8fMi5kbnNjcnlwdC1jZXJ0LnNmdy5zY2FsZXdheS1mcg
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
untrusted comment: signature from minisign secret key
|
untrusted comment: signature from minisign secret key
|
||||||
RWQf6LRCGA9i5/y4TNTdCatzmBNFqERNYoilAFFPeJRgyExg9js1T5OVRPzk8I6lynsvJ2qvMXo5f8OdplLydL+WCrICDgGEKAo=
|
RWQf6LRCGA9i52UtToPgih/Ec5ZpmGwlleDewldnQWpKX1wAwcJJd4RCcqZL72JpXNlflkjN6OrERCjQnxd8P2vghKeoZ3F/aAE=
|
||||||
trusted comment: timestamp:1592763672 file:parental-control.md
|
trusted comment: timestamp:1592768550 file:parental-control.md
|
||||||
20VcUbCXg0RmoRLx49PdKBQe4sqY3MXfd8SIpjM8jAy+Cd8mg36laO6lD9wJgSmZIwJDPvw5/VZoTTwPm0IcBw==
|
vs4JvoxoGPflyulBoegAZMJNr2+hYcQcYFLEEdkQKczcc+YlR+Odee75JQPDOF94tJI/KgTM00XjUijhC5v3DQ==
|
||||||
|
@ -239,6 +239,7 @@ sdns://AgEAAAAAAAAAACA_4zhjTgUQYz3kU8o1CxXOwzmz3Li6nyot0k0QqDj-6x1mYW1pbHkuY2FuY
|
|||||||
|
|
||||||
|
|
||||||
## cira-private
|
## cira-private
|
||||||
|
|
||||||
CIRA DoH resolvers, blocking trackers.
|
CIRA DoH resolvers, blocking trackers.
|
||||||
Operated by the .CA registry. Built by Canadians for Canadians.
|
Operated by the .CA registry. Built by Canadians for Canadians.
|
||||||
https://www.cira.ca/fr/cybersecurity-services/canadian-shield
|
https://www.cira.ca/fr/cybersecurity-services/canadian-shield
|
||||||
@ -1167,7 +1168,6 @@ sdns://AQcAAAAAAAAADTIzLjExMS43NC4yMDUg_0RyX8kcAcMdtRk5SAX5RKs3yiLLS6kdJlnsUpVbn
|
|||||||
An open (non-logging, non-filtering, no ECS) DNSCrypt resolver operated by https://faelix.net/ with IPv4 nodes anycast within AS41495 in Switzerland.
|
An open (non-logging, non-filtering, no ECS) DNSCrypt resolver operated by https://faelix.net/ with IPv4 nodes anycast within AS41495 in Switzerland.
|
||||||
|
|
||||||
sdns://AQcAAAAAAAAAEzE4NS4xMzQuMTk2LjU0Ojg0NDMgfsvvPi8BgDKNYODh0ewj5Oh32OoJoZNwGgTWs8C-i-EfMi5kbnNjcnlwdC1jZXJ0LnJkbnMuZmFlbGl4Lm5ldA
|
sdns://AQcAAAAAAAAAEzE4NS4xMzQuMTk2LjU0Ojg0NDMgfsvvPi8BgDKNYODh0ewj5Oh32OoJoZNwGgTWs8C-i-EfMi5kbnNjcnlwdC1jZXJ0LnJkbnMuZmFlbGl4Lm5ldA
|
||||||
|
|
||||||
sdns://AQcAAAAAAAAAEzE4NS4xMzQuMTk2LjU1Ojg0NDMgfsvvPi8BgDKNYODh0ewj5Oh32OoJoZNwGgTWs8C-i-EfMi5kbnNjcnlwdC1jZXJ0LnJkbnMuZmFlbGl4Lm5ldA
|
sdns://AQcAAAAAAAAAEzE4NS4xMzQuMTk2LjU1Ojg0NDMgfsvvPi8BgDKNYODh0ewj5Oh32OoJoZNwGgTWs8C-i-EfMi5kbnNjcnlwdC1jZXJ0LnJkbnMuZmFlbGl4Lm5ldA
|
||||||
|
|
||||||
|
|
||||||
@ -1176,7 +1176,6 @@ sdns://AQcAAAAAAAAAEzE4NS4xMzQuMTk2LjU1Ojg0NDMgfsvvPi8BgDKNYODh0ewj5Oh32OoJoZNwG
|
|||||||
An open (non-logging, non-filtering, no ECS) DoH resolver operated by https://faelix.net/ with IPv4 nodes anycast within AS41495 in Switzerland.
|
An open (non-logging, non-filtering, no ECS) DoH resolver operated by https://faelix.net/ with IPv4 nodes anycast within AS41495 in Switzerland.
|
||||||
|
|
||||||
sdns://AgcAAAAAAAAADjE4NS4xMzQuMTk2LjU0ID4aGg9sU_PpekktVwhLW5gHBZ7gV6sVBYdv2D_aPbg4D3JkbnMuZmFlbGl4Lm5ldAEv
|
sdns://AgcAAAAAAAAADjE4NS4xMzQuMTk2LjU0ID4aGg9sU_PpekktVwhLW5gHBZ7gV6sVBYdv2D_aPbg4D3JkbnMuZmFlbGl4Lm5ldAEv
|
||||||
|
|
||||||
sdns://AgcAAAAAAAAADjE4NS4xMzQuMTk2LjU1ID4aGg9sU_PpekktVwhLW5gHBZ7gV6sVBYdv2D_aPbg4D3JkbnMuZmFlbGl4Lm5ldAEv
|
sdns://AgcAAAAAAAAADjE4NS4xMzQuMTk2LjU1ID4aGg9sU_PpekktVwhLW5gHBZ7gV6sVBYdv2D_aPbg4D3JkbnMuZmFlbGl4Lm5ldAEv
|
||||||
|
|
||||||
|
|
||||||
@ -1185,7 +1184,6 @@ sdns://AgcAAAAAAAAADjE4NS4xMzQuMTk2LjU1ID4aGg9sU_PpekktVwhLW5gHBZ7gV6sVBYdv2D_aP
|
|||||||
An open (non-logging, non-filtering, no ECS) DNSCrypt resolver operated by https://faelix.net/ with IPv6 nodes anycast within AS41495 in Switzerland.
|
An open (non-logging, non-filtering, no ECS) DNSCrypt resolver operated by https://faelix.net/ with IPv6 nodes anycast within AS41495 in Switzerland.
|
||||||
|
|
||||||
sdns://AQcAAAAAAAAAFFsyYTAxOjllMDE6OjU0XTo4NDQzIH7L7z4vAYAyjWDg4dHsI-Tod9jqCaGTcBoE1rPAvovhHzIuZG5zY3J5cHQtY2VydC5yZG5zLmZhZWxpeC5uZXQ
|
sdns://AQcAAAAAAAAAFFsyYTAxOjllMDE6OjU0XTo4NDQzIH7L7z4vAYAyjWDg4dHsI-Tod9jqCaGTcBoE1rPAvovhHzIuZG5zY3J5cHQtY2VydC5yZG5zLmZhZWxpeC5uZXQ
|
||||||
|
|
||||||
sdns://AQcAAAAAAAAAFFsyYTAxOjllMDE6OjU1XTo4NDQzIH7L7z4vAYAyjWDg4dHsI-Tod9jqCaGTcBoE1rPAvovhHzIuZG5zY3J5cHQtY2VydC5yZG5zLmZhZWxpeC5uZXQ
|
sdns://AQcAAAAAAAAAFFsyYTAxOjllMDE6OjU1XTo4NDQzIH7L7z4vAYAyjWDg4dHsI-Tod9jqCaGTcBoE1rPAvovhHzIuZG5zY3J5cHQtY2VydC5yZG5zLmZhZWxpeC5uZXQ
|
||||||
|
|
||||||
|
|
||||||
@ -1194,7 +1192,6 @@ sdns://AQcAAAAAAAAAFFsyYTAxOjllMDE6OjU1XTo4NDQzIH7L7z4vAYAyjWDg4dHsI-Tod9jqCaGTc
|
|||||||
An open (non-logging, non-filtering, no ECS) DoH resolver operated by https://faelix.net/ with IPv6 nodes anycast within AS41495 in Switzerland.
|
An open (non-logging, non-filtering, no ECS) DoH resolver operated by https://faelix.net/ with IPv6 nodes anycast within AS41495 in Switzerland.
|
||||||
|
|
||||||
sdns://AgcAAAAAAAAAD1syYTAxOjllMDE6OjU0XSA-GhoPbFPz6XpJLVcIS1uYBwWe4FerFQWHb9g_2j24OA9yZG5zLmZhZWxpeC5uZXQBLw
|
sdns://AgcAAAAAAAAAD1syYTAxOjllMDE6OjU0XSA-GhoPbFPz6XpJLVcIS1uYBwWe4FerFQWHb9g_2j24OA9yZG5zLmZhZWxpeC5uZXQBLw
|
||||||
|
|
||||||
sdns://AgcAAAAAAAAAD1syYTAxOjllMDE6OjU1XSA-GhoPbFPz6XpJLVcIS1uYBwWe4FerFQWHb9g_2j24OA9yZG5zLmZhZWxpeC5uZXQBLw
|
sdns://AgcAAAAAAAAAD1syYTAxOjllMDE6OjU1XSA-GhoPbFPz6XpJLVcIS1uYBwWe4FerFQWHb9g_2j24OA9yZG5zLmZhZWxpeC5uZXQBLw
|
||||||
|
|
||||||
|
|
||||||
@ -1203,7 +1200,6 @@ sdns://AgcAAAAAAAAAD1syYTAxOjllMDE6OjU1XSA-GhoPbFPz6XpJLVcIS1uYBwWe4FerFQWHb9g_2
|
|||||||
An open (non-logging, non-filtering, no ECS) DNSCrypt resolver operated by https://faelix.net/ with IPv4 nodes anycast within AS41495 in the UK.
|
An open (non-logging, non-filtering, no ECS) DNSCrypt resolver operated by https://faelix.net/ with IPv4 nodes anycast within AS41495 in the UK.
|
||||||
|
|
||||||
sdns://AQcAAAAAAAAAEjQ2LjIyNy4yMDAuNTQ6ODQ0MyB-y-8-LwGAMo1g4OHR7CPk6HfY6gmhk3AaBNazwL6L4R8yLmRuc2NyeXB0LWNlcnQucmRucy5mYWVsaXgubmV0
|
sdns://AQcAAAAAAAAAEjQ2LjIyNy4yMDAuNTQ6ODQ0MyB-y-8-LwGAMo1g4OHR7CPk6HfY6gmhk3AaBNazwL6L4R8yLmRuc2NyeXB0LWNlcnQucmRucy5mYWVsaXgubmV0
|
||||||
|
|
||||||
sdns://AQcAAAAAAAAAEjQ2LjIyNy4yMDAuNTU6ODQ0MyB-y-8-LwGAMo1g4OHR7CPk6HfY6gmhk3AaBNazwL6L4R8yLmRuc2NyeXB0LWNlcnQucmRucy5mYWVsaXgubmV0
|
sdns://AQcAAAAAAAAAEjQ2LjIyNy4yMDAuNTU6ODQ0MyB-y-8-LwGAMo1g4OHR7CPk6HfY6gmhk3AaBNazwL6L4R8yLmRuc2NyeXB0LWNlcnQucmRucy5mYWVsaXgubmV0
|
||||||
|
|
||||||
|
|
||||||
@ -1212,7 +1208,6 @@ sdns://AQcAAAAAAAAAEjQ2LjIyNy4yMDAuNTU6ODQ0MyB-y-8-LwGAMo1g4OHR7CPk6HfY6gmhk3AaB
|
|||||||
An open (non-logging, non-filtering, no ECS) DoH resolver operated by https://faelix.net/ with IPv4 nodes anycast within AS41495 in the UK.
|
An open (non-logging, non-filtering, no ECS) DoH resolver operated by https://faelix.net/ with IPv4 nodes anycast within AS41495 in the UK.
|
||||||
|
|
||||||
sdns://AgcAAAAAAAAADTQ2LjIyNy4yMDAuNTQgPhoaD2xT8-l6SS1XCEtbmAcFnuBXqxUFh2_YP9o9uDgPcmRucy5mYWVsaXgubmV0AS8
|
sdns://AgcAAAAAAAAADTQ2LjIyNy4yMDAuNTQgPhoaD2xT8-l6SS1XCEtbmAcFnuBXqxUFh2_YP9o9uDgPcmRucy5mYWVsaXgubmV0AS8
|
||||||
|
|
||||||
sdns://AgcAAAAAAAAADTQ2LjIyNy4yMDAuNTUgPhoaD2xT8-l6SS1XCEtbmAcFnuBXqxUFh2_YP9o9uDgPcmRucy5mYWVsaXgubmV0AS8
|
sdns://AgcAAAAAAAAADTQ2LjIyNy4yMDAuNTUgPhoaD2xT8-l6SS1XCEtbmAcFnuBXqxUFh2_YP9o9uDgPcmRucy5mYWVsaXgubmV0AS8
|
||||||
|
|
||||||
|
|
||||||
@ -1221,7 +1216,6 @@ sdns://AgcAAAAAAAAADTQ2LjIyNy4yMDAuNTUgPhoaD2xT8-l6SS1XCEtbmAcFnuBXqxUFh2_YP9o9u
|
|||||||
An open (non-logging, non-filtering, no ECS) DNSCrypt resolver operated by https://faelix.net/ with IPv6 nodes anycast within AS41495 in the UK.
|
An open (non-logging, non-filtering, no ECS) DNSCrypt resolver operated by https://faelix.net/ with IPv6 nodes anycast within AS41495 in the UK.
|
||||||
|
|
||||||
sdns://AQcAAAAAAAAAFFsyYTAxOjllMDA6OjU0XTo4NDQzIH7L7z4vAYAyjWDg4dHsI-Tod9jqCaGTcBoE1rPAvovhHzIuZG5zY3J5cHQtY2VydC5yZG5zLmZhZWxpeC5uZXQ
|
sdns://AQcAAAAAAAAAFFsyYTAxOjllMDA6OjU0XTo4NDQzIH7L7z4vAYAyjWDg4dHsI-Tod9jqCaGTcBoE1rPAvovhHzIuZG5zY3J5cHQtY2VydC5yZG5zLmZhZWxpeC5uZXQ
|
||||||
|
|
||||||
sdns://AQcAAAAAAAAAFFsyYTAxOjllMDA6OjU1XTo4NDQzIH7L7z4vAYAyjWDg4dHsI-Tod9jqCaGTcBoE1rPAvovhHzIuZG5zY3J5cHQtY2VydC5yZG5zLmZhZWxpeC5uZXQ
|
sdns://AQcAAAAAAAAAFFsyYTAxOjllMDA6OjU1XTo4NDQzIH7L7z4vAYAyjWDg4dHsI-Tod9jqCaGTcBoE1rPAvovhHzIuZG5zY3J5cHQtY2VydC5yZG5zLmZhZWxpeC5uZXQ
|
||||||
|
|
||||||
|
|
||||||
@ -1230,7 +1224,6 @@ sdns://AQcAAAAAAAAAFFsyYTAxOjllMDA6OjU1XTo4NDQzIH7L7z4vAYAyjWDg4dHsI-Tod9jqCaGTc
|
|||||||
An open (non-logging, non-filtering, no ECS) DoH resolver operated by https://faelix.net/ with IPv6 nodes anycast within AS41495 in the UK.
|
An open (non-logging, non-filtering, no ECS) DoH resolver operated by https://faelix.net/ with IPv6 nodes anycast within AS41495 in the UK.
|
||||||
|
|
||||||
sdns://AgcAAAAAAAAAD1syYTAxOjllMDA6OjU0XSA-GhoPbFPz6XpJLVcIS1uYBwWe4FerFQWHb9g_2j24OA9yZG5zLmZhZWxpeC5uZXQBLw
|
sdns://AgcAAAAAAAAAD1syYTAxOjllMDA6OjU0XSA-GhoPbFPz6XpJLVcIS1uYBwWe4FerFQWHb9g_2j24OA9yZG5zLmZhZWxpeC5uZXQBLw
|
||||||
|
|
||||||
sdns://AgcAAAAAAAAAD1syYTAxOjllMDA6OjU1XSA-GhoPbFPz6XpJLVcIS1uYBwWe4FerFQWHb9g_2j24OA9yZG5zLmZhZWxpeC5uZXQBLw
|
sdns://AgcAAAAAAAAAD1syYTAxOjllMDA6OjU1XSA-GhoPbFPz6XpJLVcIS1uYBwWe4FerFQWHb9g_2j24OA9yZG5zLmZhZWxpeC5uZXQBLw
|
||||||
|
|
||||||
|
|
||||||
@ -1599,82 +1592,114 @@ sdns://AgcAAAAAAAAAACAoPxWWFWiOuUdTdn7SvYpzbNqr_iDmmJrktihy4wca5gxkbnMudHduaWMud
|
|||||||
|
|
||||||
|
|
||||||
## quad9-dnscrypt-ip4-filter-alt
|
## quad9-dnscrypt-ip4-filter-alt
|
||||||
|
|
||||||
Quad9 (anycast) dnssec/no-log/filter 149.112.112.9
|
Quad9 (anycast) dnssec/no-log/filter 149.112.112.9
|
||||||
|
|
||||||
sdns://AQMAAAAAAAAAEjE0OS4xMTIuMTEyLjk6ODQ0MyBnyEe4yHWM0SAkVUO-dWdG3zTfHYTAC4xHA2jfgh2GPhkyLmRuc2NyeXB0LWNlcnQucXVhZDkubmV0
|
sdns://AQMAAAAAAAAAEjE0OS4xMTIuMTEyLjk6ODQ0MyBnyEe4yHWM0SAkVUO-dWdG3zTfHYTAC4xHA2jfgh2GPhkyLmRuc2NyeXB0LWNlcnQucXVhZDkubmV0
|
||||||
|
|
||||||
|
|
||||||
## quad9-dnscrypt-ip4-filter-pri
|
## quad9-dnscrypt-ip4-filter-pri
|
||||||
|
|
||||||
Quad9 (anycast) dnssec/no-log/filter 9.9.9.9
|
Quad9 (anycast) dnssec/no-log/filter 9.9.9.9
|
||||||
|
|
||||||
sdns://AQMAAAAAAAAADDkuOS45Ljk6ODQ0MyBnyEe4yHWM0SAkVUO-dWdG3zTfHYTAC4xHA2jfgh2GPhkyLmRuc2NyeXB0LWNlcnQucXVhZDkubmV0
|
sdns://AQMAAAAAAAAADDkuOS45Ljk6ODQ0MyBnyEe4yHWM0SAkVUO-dWdG3zTfHYTAC4xHA2jfgh2GPhkyLmRuc2NyeXB0LWNlcnQucXVhZDkubmV0
|
||||||
|
|
||||||
|
|
||||||
## quad9-dnscrypt-ip4-nofilter-alt
|
## quad9-dnscrypt-ip4-nofilter-alt
|
||||||
|
|
||||||
Quad9 (anycast) no-dnssec/no-log/no-filter 149.112.112.10
|
Quad9 (anycast) no-dnssec/no-log/no-filter 149.112.112.10
|
||||||
|
|
||||||
sdns://AQYAAAAAAAAAEzE0OS4xMTIuMTEyLjEwOjg0NDMgZ8hHuMh1jNEgJFVDvnVnRt803x2EwAuMRwNo34Idhj4ZMi5kbnNjcnlwdC1jZXJ0LnF1YWQ5Lm5ldA
|
sdns://AQYAAAAAAAAAEzE0OS4xMTIuMTEyLjEwOjg0NDMgZ8hHuMh1jNEgJFVDvnVnRt803x2EwAuMRwNo34Idhj4ZMi5kbnNjcnlwdC1jZXJ0LnF1YWQ5Lm5ldA
|
||||||
|
|
||||||
|
|
||||||
## quad9-dnscrypt-ip4-nofilter-pri
|
## quad9-dnscrypt-ip4-nofilter-pri
|
||||||
|
|
||||||
Quad9 (anycast) no-dnssec/no-log/no-filter 9.9.9.10
|
Quad9 (anycast) no-dnssec/no-log/no-filter 9.9.9.10
|
||||||
|
|
||||||
sdns://AQYAAAAAAAAADTkuOS45LjEwOjg0NDMgZ8hHuMh1jNEgJFVDvnVnRt803x2EwAuMRwNo34Idhj4ZMi5kbnNjcnlwdC1jZXJ0LnF1YWQ5Lm5ldA
|
sdns://AQYAAAAAAAAADTkuOS45LjEwOjg0NDMgZ8hHuMh1jNEgJFVDvnVnRt803x2EwAuMRwNo34Idhj4ZMi5kbnNjcnlwdC1jZXJ0LnF1YWQ5Lm5ldA
|
||||||
|
|
||||||
|
|
||||||
## quad9-dnscrypt-ip6-filter-alt
|
## quad9-dnscrypt-ip6-filter-alt
|
||||||
|
|
||||||
Quad9 (anycast) dnssec/no-log/filter 2620:fe::9
|
Quad9 (anycast) dnssec/no-log/filter 2620:fe::9
|
||||||
|
|
||||||
sdns://AQMAAAAAAAAAEVsyNjIwOmZlOjo5XTo4NDQzIGfIR7jIdYzRICRVQ751Z0bfNN8dhMALjEcDaN-CHYY-GTIuZG5zY3J5cHQtY2VydC5xdWFkOS5uZXQ
|
sdns://AQMAAAAAAAAAEVsyNjIwOmZlOjo5XTo4NDQzIGfIR7jIdYzRICRVQ751Z0bfNN8dhMALjEcDaN-CHYY-GTIuZG5zY3J5cHQtY2VydC5xdWFkOS5uZXQ
|
||||||
|
|
||||||
|
|
||||||
## quad9-dnscrypt-ip6-filter-pri
|
## quad9-dnscrypt-ip6-filter-pri
|
||||||
|
|
||||||
Quad9 (anycast) dnssec/no-log/filter 2620:fe::fe:9
|
Quad9 (anycast) dnssec/no-log/filter 2620:fe::fe:9
|
||||||
|
|
||||||
sdns://AQMAAAAAAAAAFFsyNjIwOmZlOjpmZTo5XTo4NDQzIGfIR7jIdYzRICRVQ751Z0bfNN8dhMALjEcDaN-CHYY-GTIuZG5zY3J5cHQtY2VydC5xdWFkOS5uZXQ
|
sdns://AQMAAAAAAAAAFFsyNjIwOmZlOjpmZTo5XTo4NDQzIGfIR7jIdYzRICRVQ751Z0bfNN8dhMALjEcDaN-CHYY-GTIuZG5zY3J5cHQtY2VydC5xdWFkOS5uZXQ
|
||||||
|
|
||||||
|
|
||||||
## quad9-dnscrypt-ip6-nofilter-alt
|
## quad9-dnscrypt-ip6-nofilter-alt
|
||||||
|
|
||||||
Quad9 (anycast) no-dnssec/no-log/no-filter 2620:fe::fe:10
|
Quad9 (anycast) no-dnssec/no-log/no-filter 2620:fe::fe:10
|
||||||
|
|
||||||
sdns://AQYAAAAAAAAAFVsyNjIwOmZlOjpmZToxMF06ODQ0MyBnyEe4yHWM0SAkVUO-dWdG3zTfHYTAC4xHA2jfgh2GPhkyLmRuc2NyeXB0LWNlcnQucXVhZDkubmV0
|
sdns://AQYAAAAAAAAAFVsyNjIwOmZlOjpmZToxMF06ODQ0MyBnyEe4yHWM0SAkVUO-dWdG3zTfHYTAC4xHA2jfgh2GPhkyLmRuc2NyeXB0LWNlcnQucXVhZDkubmV0
|
||||||
|
|
||||||
|
|
||||||
## quad9-dnscrypt-ip6-nofilter-pri
|
## quad9-dnscrypt-ip6-nofilter-pri
|
||||||
|
|
||||||
Quad9 (anycast) no-dnssec/no-log/no-filter 2620:fe::10
|
Quad9 (anycast) no-dnssec/no-log/no-filter 2620:fe::10
|
||||||
|
|
||||||
sdns://AQYAAAAAAAAAElsyNjIwOmZlOjoxMF06ODQ0MyBnyEe4yHWM0SAkVUO-dWdG3zTfHYTAC4xHA2jfgh2GPhkyLmRuc2NyeXB0LWNlcnQucXVhZDkubmV0
|
sdns://AQYAAAAAAAAAElsyNjIwOmZlOjoxMF06ODQ0MyBnyEe4yHWM0SAkVUO-dWdG3zTfHYTAC4xHA2jfgh2GPhkyLmRuc2NyeXB0LWNlcnQucXVhZDkubmV0
|
||||||
|
|
||||||
|
|
||||||
## quad9-doh-ip4-filter-alt
|
## quad9-doh-ip4-filter-alt
|
||||||
|
|
||||||
Quad9 (anycast) dnssec/no-log/filter 149.112.112.9
|
Quad9 (anycast) dnssec/no-log/filter 149.112.112.9
|
||||||
|
|
||||||
sdns://AgMAAAAAAAAADTE0OS4xMTIuMTEyLjmAABJkbnM5LnF1YWQ5Lm5ldDo0NDMKL2Rucy1xdWVyeQ
|
sdns://AgMAAAAAAAAADTE0OS4xMTIuMTEyLjmAABJkbnM5LnF1YWQ5Lm5ldDo0NDMKL2Rucy1xdWVyeQ
|
||||||
|
|
||||||
|
|
||||||
## quad9-doh-ip4-filter-pri
|
## quad9-doh-ip4-filter-pri
|
||||||
|
|
||||||
Quad9 (anycast) dnssec/no-log/filter 9.9.9.9
|
Quad9 (anycast) dnssec/no-log/filter 9.9.9.9
|
||||||
|
|
||||||
sdns://AgMAAAAAAAAABzkuOS45LjmAABJkbnM5LnF1YWQ5Lm5ldDo0NDMKL2Rucy1xdWVyeQ
|
sdns://AgMAAAAAAAAABzkuOS45LjmAABJkbnM5LnF1YWQ5Lm5ldDo0NDMKL2Rucy1xdWVyeQ
|
||||||
|
|
||||||
|
|
||||||
## quad9-doh-ip4-nofilter-alt
|
## quad9-doh-ip4-nofilter-alt
|
||||||
|
|
||||||
Quad9 (anycast) no-dnssec/no-log/no-filter 149.112.112.10
|
Quad9 (anycast) no-dnssec/no-log/no-filter 149.112.112.10
|
||||||
|
|
||||||
sdns://AgYAAAAAAAAADjE0OS4xMTIuMTEyLjEwgAASZG5zOS5xdWFkOS5uZXQ6NDQzCi9kbnMtcXVlcnk
|
sdns://AgYAAAAAAAAADjE0OS4xMTIuMTEyLjEwgAASZG5zOS5xdWFkOS5uZXQ6NDQzCi9kbnMtcXVlcnk
|
||||||
|
|
||||||
|
|
||||||
## quad9-doh-ip4-nofilter-pri
|
## quad9-doh-ip4-nofilter-pri
|
||||||
|
|
||||||
Quad9 (anycast) no-dnssec/no-log/no-filter 9.9.9.10
|
Quad9 (anycast) no-dnssec/no-log/no-filter 9.9.9.10
|
||||||
|
|
||||||
sdns://AgYAAAAAAAAACDkuOS45LjEwgAASZG5zOS5xdWFkOS5uZXQ6NDQzCi9kbnMtcXVlcnk
|
sdns://AgYAAAAAAAAACDkuOS45LjEwgAASZG5zOS5xdWFkOS5uZXQ6NDQzCi9kbnMtcXVlcnk
|
||||||
|
|
||||||
|
|
||||||
## quad9-doh-ip6-filter-alt
|
## quad9-doh-ip6-filter-alt
|
||||||
|
|
||||||
Quad9 (anycast) dnssec/no-log/filter 2620:fe::fe:9
|
Quad9 (anycast) dnssec/no-log/filter 2620:fe::fe:9
|
||||||
|
|
||||||
sdns://AgMAAAAAAAAAD1syNjIwOmZlOjpmZTo5XYAAEmRuczkucXVhZDkubmV0OjQ0MwovZG5zLXF1ZXJ5
|
sdns://AgMAAAAAAAAAD1syNjIwOmZlOjpmZTo5XYAAEmRuczkucXVhZDkubmV0OjQ0MwovZG5zLXF1ZXJ5
|
||||||
|
|
||||||
|
|
||||||
## quad9-doh-ip6-filter-pri
|
## quad9-doh-ip6-filter-pri
|
||||||
|
|
||||||
Quad9 (anycast) dnssec/no-log/filter 2620:fe::9
|
Quad9 (anycast) dnssec/no-log/filter 2620:fe::9
|
||||||
|
|
||||||
sdns://AgMAAAAAAAAADFsyNjIwOmZlOjo5XYAAEmRuczkucXVhZDkubmV0OjQ0MwovZG5zLXF1ZXJ5
|
sdns://AgMAAAAAAAAADFsyNjIwOmZlOjo5XYAAEmRuczkucXVhZDkubmV0OjQ0MwovZG5zLXF1ZXJ5
|
||||||
|
|
||||||
|
|
||||||
## quad9-doh-ip6-nofilter-alt
|
## quad9-doh-ip6-nofilter-alt
|
||||||
|
|
||||||
Quad9 (anycast) no-dnssec/no-log/no-filter 2620:fe::fe:10
|
Quad9 (anycast) no-dnssec/no-log/no-filter 2620:fe::fe:10
|
||||||
|
|
||||||
sdns://AgYAAAAAAAAAEFsyNjIwOmZlOjpmZToxMF2AABJkbnM5LnF1YWQ5Lm5ldDo0NDMKL2Rucy1xdWVyeQ
|
sdns://AgYAAAAAAAAAEFsyNjIwOmZlOjpmZToxMF2AABJkbnM5LnF1YWQ5Lm5ldDo0NDMKL2Rucy1xdWVyeQ
|
||||||
|
|
||||||
|
|
||||||
## quad9-doh-ip6-nofilter-pri
|
## quad9-doh-ip6-nofilter-pri
|
||||||
|
|
||||||
Quad9 (anycast) no-dnssec/no-log/no-filter 2620:fe::10
|
Quad9 (anycast) no-dnssec/no-log/no-filter 2620:fe::10
|
||||||
|
|
||||||
sdns://AgYAAAAAAAAADVsyNjIwOmZlOjoxMF2AABJkbnM5LnF1YWQ5Lm5ldDo0NDMKL2Rucy1xdWVyeQ
|
sdns://AgYAAAAAAAAADVsyNjIwOmZlOjoxMF2AABJkbnM5LnF1YWQ5Lm5ldDo0NDMKL2Rucy1xdWVyeQ
|
||||||
|
|
||||||
|
|
||||||
@ -1780,12 +1805,14 @@ sdns://AQcAAAAAAAAAFDE3OC4yMTYuMjAxLjIyMjoyMDUzICXE4YgpFUaXj5wrvbanr6QB7aBRBQhdU
|
|||||||
|
|
||||||
|
|
||||||
## sth-dnscrypt-se
|
## sth-dnscrypt-se
|
||||||
|
|
||||||
Resolver in Stockholm, Sweden. DNSCrypt server. Non-logging, non-filtering, DNSSEC. Forward DNS to anoymized DNS servers
|
Resolver in Stockholm, Sweden. DNSCrypt server. Non-logging, non-filtering, DNSSEC. Forward DNS to anoymized DNS servers
|
||||||
|
|
||||||
sdns://AQcAAAAAAAAAETQ1LjE1My4xODcuOTY6NDQzILwTiPV2Pj3sdfHJD8kVv7aK6t_rHEX2mFGAY5xg5_FiHzIuZG5zY3J5cHQtY2VydC5zdGgtZG5zY3J5cHQtc2U
|
sdns://AQcAAAAAAAAAETQ1LjE1My4xODcuOTY6NDQzILwTiPV2Pj3sdfHJD8kVv7aK6t_rHEX2mFGAY5xg5_FiHzIuZG5zY3J5cHQtY2VydC5zdGgtZG5zY3J5cHQtc2U
|
||||||
|
|
||||||
|
|
||||||
## sth-doh-se
|
## sth-doh-se
|
||||||
|
|
||||||
Resolver in Stockholm, Sweden. DoH server. Non-logging, non-filtering, DNSSEC. Forward DNS to anoymized DNS servers
|
Resolver in Stockholm, Sweden. DoH server. Non-logging, non-filtering, DNSSEC. Forward DNS to anoymized DNS servers
|
||||||
|
|
||||||
sdns://AgcAAAAAAAAAETQ1LjE1My4xODcuOTY6NDQzABZkbnNzZS5hbGVrYmVyZy5uZXQ6NDQzBC9kbnM
|
sdns://AgcAAAAAAAAAETQ1LjE1My4xODcuOTY6NDQzABZkbnNzZS5hbGVrYmVyZy5uZXQ6NDQzBC9kbnM
|
||||||
@ -1833,3 +1860,4 @@ sdns://AgUAAAAAAAAAEjk2LjExMy4xNTEuMTQzOjQ0M6Ax_Wo8PCx8I5Gkl1qfoqes0mp4xMrk1W5GI
|
|||||||
Yandex public DNS server (anycast)
|
Yandex public DNS server (anycast)
|
||||||
|
|
||||||
sdns://AQQAAAAAAAAAEDc3Ljg4LjguNzg6MTUzNTMg04TAccn3RmKvKszVe13MlxTUB7atNgHhrtwG1W1JYyciMi5kbnNjcnlwdC1jZXJ0LmJyb3dzZXIueWFuZGV4Lm5ldA
|
sdns://AQQAAAAAAAAAEDc3Ljg4LjguNzg6MTUzNTMg04TAccn3RmKvKszVe13MlxTUB7atNgHhrtwG1W1JYyciMi5kbnNjcnlwdC1jZXJ0LmJyb3dzZXIueWFuZGV4Lm5ldA
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
untrusted comment: signature from minisign secret key
|
untrusted comment: signature from minisign secret key
|
||||||
RWQf6LRCGA9i55ilPriyen1JekpI0IH0gvZzepH6y/Fm2Bpi8WnhPDDpYuUiWR4MhTZD543ByzwsdilZFGy+v5LwvYKxqcnr1wg=
|
RWQf6LRCGA9i5xns+QPfUeCV9HCEkmM+CjQvTBPM7ISmZJAdA2ZDVOPxRPy2VqOnPddWtiE7ekmI49d8ntiLGrrBy9IuVxqLugQ=
|
||||||
trusted comment: timestamp:1592763672 file:public-resolvers.md
|
trusted comment: timestamp:1592768550 file:public-resolvers.md
|
||||||
vUWZrtgrCHw14l8aEid/Rb7ViWzX+1GtTAzu4iao9uYymoFW7rlyytPmk7iPv76CnY+HjpPNY3t5DaLA83g4DA==
|
99UCKErRtunO5cKTn/4MPBC3y6mqilU4jsGuXtGslkrZX4YsneWP5JBOrhFdmFnmJz+CiyomB6FK11j68zUHBg==
|
||||||
|
@ -295,3 +295,4 @@ sdns://gRMxMDQuMjM4LjE4Ni4xOTI6NDQz
|
|||||||
Anonymized DNS relay hosted in UK on Vultr
|
Anonymized DNS relay hosted in UK on Vultr
|
||||||
|
|
||||||
sdns://gSxbMjAwMToxOWYwOjc0MDI6MTU3NDo1NDAwOjJmZjpmZTY2OjJjZmZdOjQ0Mw
|
sdns://gSxbMjAwMToxOWYwOjc0MDI6MTU3NDo1NDAwOjJmZjpmZTY2OjJjZmZdOjQ0Mw
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
untrusted comment: signature from minisign secret key
|
untrusted comment: signature from minisign secret key
|
||||||
RWQf6LRCGA9i57eSFq9p9qQ4Y5raP2ptJFK7MCteNxLtHYWeQ1HuPVB3Fr0uf45tVWf2VE2pySfSoADsqYIpVe6YJKYKusN6MA0=
|
RWQf6LRCGA9i5xRPX0ZoZco2e8P+Z6xOYuh2izHYYNX0cXaZRSzk0Kh9AsnFgMeDMM4TFTINTothN8SXlzXlZYz3F7Uj6eZnxgY=
|
||||||
trusted comment: timestamp:1592217577 file:relays.md
|
trusted comment: timestamp:1592768550 file:relays.md
|
||||||
T6JGlgCNvIgim7EfH3n2kCWj5QktSDn7+1GnktN1+dJxkfDs/SRxR135TqhRhnBnpJ0RsH4IXGsqizv1OwYQCA==
|
PvPWr0/XxpFQYGvWBRSp0rSdgjz3RBgpoQ6GOyeVMJk29sws+3eWubY2lcPYKWuXhGobZ7JYWyLavDRHiUtzCg==
|
||||||
|
Loading…
x
Reference in New Issue
Block a user