"dnsmasq_config_update_option",
_("Update DNSMASQ Config on Start/Stop"),
_(
- "If update option is selected, the %s'DNS forwardings' section of DHCP and DNS%s will be automatically updated to use selected DoH providers (%smore information%s)."
+ "If update option is selected, the %s'DNS Forwards' section of DHCP and DNS%s will be automatically updated to use selected DoH providers (%smore information%s)."
).format(
'<a href="' + L.url("admin", "network", "dhcp") + '">',
"</a>",
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
--- /dev/null
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2024-01-19 12:38+0000\n"
+"Last-Translator: Džiugas J <dziugas1959@hotmail.com>\n"
+"Language-Team: Lithuanian <https://hosted.weblate.org/projects/openwrt/"
+"luciapplicationshttps-dns-proxy/lt/>\n"
+"Language: lt\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n % 10 == 1 && (n % 100 < 11 || n % 100 > "
+"19)) ? 0 : ((n % 10 >= 2 && n % 10 <= 9 && (n % 100 < 11 || n % 100 > 19)) ? "
+"1 : 2);\n"
+"X-Generator: Weblate 5.4-dev\n"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:258
+msgid "%s%s%s proxy at %s on port %s.%s"
+msgstr "%s%s%s įgaliotas randamas %s prievade %s.%s"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:250
+msgid "%s%s%s proxy on port %s.%s"
+msgstr "%s%s%s įgaliotas prievade %s.%s"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/co.oszx.dns.json:14
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/gr.libredns.doh.json:14
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.mullvad.doh.json:15
+msgid "AdBlocking Filter"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.adguard.dns.json:2
+msgid "AdGuard"
+msgstr "„AdGuard“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.controld.freedns.json:30
+msgid "Ads + Malware + Social Filter"
+msgstr "Reklamos + Kompiuteriniai virusai + Socialinis filtras"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.controld.freedns.json:26
+msgid "Ads + Malware Filter"
+msgstr "Reklamos + Kompiuterinių virusų filtras"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/org.cleanbrowsing.doh.json:14
+msgid "Adult Content Filter"
+msgstr "Suaugusių turinio filtras"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.ahadns.blitz.json:2
+msgid "AhaDNS Blitz"
+msgstr "„AhaDNS Blitz“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:2
+msgid "AhaDNS Regional"
+msgstr "„AhaDNS Regioninis“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.alidns.dns.json:2
+msgid "AliDNS"
+msgstr "„AliDNS“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.applied-privacy.doh.json:2
+msgid "Applied Privacy DNS (AT)"
+msgstr "Pritaikytas privatumo „DNS“ („AT“)"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:14
+msgid "Australia"
+msgstr "Australija"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.blahdns.doh.json:2
+msgid "BlahDNS"
+msgstr "„BlahDNS“"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:168
+msgid ""
+"Blocks access to Mozilla Encrypted resolvers, forcing local devices to use "
+"router for DNS resolution (%smore information%s)."
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:152
+msgid ""
+"Blocks access to iCloud Private Relay resolvers, forcing local devices to "
+"use router for DNS resolution (%smore information%s)."
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:348
+msgid "Bootstrap DNS"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.cfiec.dns.json:2
+msgid "CFIEC Public IPv6 Only DNS (CN)"
+msgstr "„CFIEC Viešasis IPv6 Tik DNS (CN)“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/ca.cira.canadianshield.json:2
+msgid "CIRA Canadian Shield"
+msgstr "„CIRA Kanadietiškas skydas“"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:166
+msgid "Canary Domains Mozilla"
+msgstr "„Mozilla Canary“ domenai-sritys"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:150
+msgid "Canary Domains iCloud"
+msgstr "„iCloud Canary“ domenai-sritys"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/org.cleanbrowsing.doh.json:2
+msgid "CleanBrowsing"
+msgstr "„ŠvarusNaršymas“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.cloudflare-dns.json:2
+msgid "Cloudflare"
+msgstr "„Cloudflare“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/app.tiarap.doh.json:18
+msgid "Cloudlfare Cached"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/one.comss.dns.json:2
+msgid "Comss DNS (RU)"
+msgstr "„Comss DNS (RU)“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.controld.freedns.json:2
+msgid "ControlD"
+msgstr "„ValdymoID“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.dnsforfamily.dns-doh.json:2
+msgid "DNS For Family"
+msgstr "„DNS Šeimai“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/de.dnsforge.json:2
+msgid "DNS Forge (DE)"
+msgstr "„DNS Forge (DE)“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/pub.doh.json:2
+msgid "DNSPod Public DNS (CN)"
+msgstr "„DNSPod Viešasis DNS (CN)“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.dnslify.doh.json:2
+msgid "DNSlify DNS"
+msgstr "„DNSlify DNS“"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:375
+msgid "DSCP Codepoint"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.decloudus.dns.json:2
+msgid "DeCloudUs DNS"
+msgstr "„DeCloudUs DNS“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/ch.digitale-gesellschaft.dns.json:2
+msgid "Digitale Gesellschaft (CH)"
+msgstr "„Digitale Gesellschaft (CH)“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/app.tiarap.doh.json:14
+msgid "Direct"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:376
+msgid "Disable"
+msgstr "Išjungti"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:370
+msgid "Disabling %s service"
+msgstr "Išjungiama „%s“ tarnyba"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:94
+msgid "Do not update configs"
+msgstr "Neatnaujinti konfigūracijų"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/cn.360.doh.json:2
+msgid "DoH 360 DNS (CN)"
+msgstr "„DoH 360 DNS (CN)“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/sb.dns.json:2
+msgid "DoH DNS (SB)"
+msgstr "„DoH DNS (SB)“"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:357
+msgid "Enable"
+msgstr "Įjungti/Įgalinti"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:351
+msgid "Enabling %s service"
+msgstr "Įjungiama „%s“ tarnyba"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ffmuc.doh.json:2
+msgid "FFMUC DNS (DE)"
+msgstr "„FFMUC DNS (DE)“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/ca.cira.canadianshield.json:14
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.adguard.dns.json:14
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.cloudflare-dns.json:14
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.controld.freedns.json:14
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.opendns.doh.json:14
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/org.cleanbrowsing.doh.json:18
+msgid "Family Filter"
+msgstr "Šeimos filtras"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/org.cleanbrowsing.doh.json:8
+msgid "Filter"
+msgstr "Filtruoti"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.ahadns.blitz.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.rethinkdns.sky.json:8
+msgid "Filters"
+msgstr "Filtrai"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.blahdns.doh.json:22
+msgid "Finland"
+msgstr "Suomija"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/status/include/71_https-dns-proxy.js:102
+msgid "Force DNS Ports"
+msgstr "Priversti „DNS“ prievadai"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:171
+msgid "Force DNS ports:"
+msgstr "Priversti „DNS“ prievadai:"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:140
+msgid "Force Router DNS"
+msgstr "Priversti maršrutizatoriaus „DNS“"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:144
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:159
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:178
+msgid "Force Router DNS server to all local devices"
+msgstr ""
+"Priversti visus vietinius įrenginius, kad naudotų maršrutizatoriaus „DNS“ "
+"serverį"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:408
+msgid "Force use of HTTP/1"
+msgstr "Priverstinis „HTTP/1“ naudojimas"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:420
+msgid "Force use of IPv6 DNS resolvers"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:141
+msgid "Forces Router DNS use on local devices, also known as DNS Hijacking."
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.blahdns.doh.json:18
+msgid "Germany"
+msgstr "Vokietija"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/google.dns.json:2
+msgid "Google"
+msgstr "„Google“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/rpcd/acl.d/luci-app-https-dns-proxy.json:3
+msgid "Grant UCI and file access for luci-app-https-dns-proxy"
+msgstr "Suteikti „UCI“ ir failų prieigą – „luci-app-https-dns-proxy“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/luci/menu.d/luci-app-https-dns-proxy.json:3
+msgid "HTTPS DNS Proxy"
+msgstr "Įgaliotas „HTTPS DNS“"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:75
+msgid "HTTPS DNS Proxy - Configuration"
+msgstr "Įgaliotas „HTTPS DNS“ – Konfigūracija"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:205
+msgid "HTTPS DNS Proxy - Instances"
+msgstr "Įgaliotas „HTTPS DNS“ – Egzemplioriai"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:161
+msgid "HTTPS DNS Proxy - Status"
+msgstr "Įgaliotas „HTTPS DNS“ – Būklė/Būsena"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/status/include/71_https-dns-proxy.js:55
+msgid "HTTPS DNS Proxy Instances"
+msgstr "Įgalioti „HTTPS DNS“ egzemplioriai"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.he.ordns.json:2
+msgid "Hurricane Electric"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.idnet.doh.json:2
+msgid "IDNet (UK)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/jp.iij.dns.public.json:2
+msgid "IIJ Public DNS (JP)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
+msgid ""
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
+"DNS%s will be automatically updated to use selected DoH providers (%smore "
+"information%s)."
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:26
+msgid "India"
+msgstr "Indija"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:30
+msgid "Italy"
+msgstr "Italija"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.blahdns.doh.json:26
+msgid "Japan"
+msgstr "Japonija"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/fi.lelux.resolver-eu.json:2
+msgid "Lelux DNS (FI)"
+msgstr "„Lelux DNS (FI)“"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:177
+msgid "Let local devices use Mozilla Private Relay"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:158
+msgid "Let local devices use iCloud Private Relay"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:143
+msgid "Let local devices use their own DNS servers if set"
+msgstr ""
+"Leisti vietiniams (prisijungtiems) įrenginiams naudoti savo nustatytą „DNS“ "
+"serverį, jeigu nustatytas"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/gr.libredns.doh.json:2
+msgid "LibreDNS (GR)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:353
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/status/include/71_https-dns-proxy.js:100
+msgid "Listen Address"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:359
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/status/include/71_https-dns-proxy.js:101
+msgid "Listen Port"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.blahdns.doh.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/one.comss.dns.json:7
+msgid "Location"
+msgstr "Vietovė"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:387
+msgid "Logging File Path"
+msgstr "Žurnalinimo failo kelias"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:381
+msgid "Logging Verbosity"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.controld.freedns.json:22
+msgid "Malware Filter"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/one.comss.dns.json:17
+msgid "Moscow, St Petersburg"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.mullvad.doh.json:2
+msgid "Mullvad"
+msgstr "„Mullvad“"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/status/include/71_https-dns-proxy.js:99
+msgid "Name / Type"
+msgstr "Pavadinimas / Tipas"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:38
+msgid "Netherlands"
+msgstr "Nyderlandai"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/io.nextdns.dns.json:2
+msgid "NextDNS.io"
+msgstr "„NextDNS.io“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:42
+msgid "Norway"
+msgstr "Norvegija"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:187
+msgid "Not installed or not found"
+msgstr "Neįdiegta arba nerasta"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/cz.nic.odvr.json:2
+msgid "ODVR (CZ)"
+msgstr "„ODVR (CZ)“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/co.oszx.dns.json:2
+msgid "OSZX DNS (UK)"
+msgstr "„OSZX DNS (UK)“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.opendns.doh.json:2
+msgid "OpenDNS"
+msgstr "„OpenDNS“"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:281
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:313
+msgid "Parameter"
+msgstr "Parametras"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:186
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:195
+msgid ""
+"Please note that %s is not supported on this system (%smore information%s)."
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:50
+msgid "Poland"
+msgstr "Lenkija"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:392
+msgid "Polling Interval"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/ca.cira.canadianshield.json:18
+msgid "Private Filter"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/ca.cira.canadianshield.json:22
+msgid "Protected Filter"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:247
+msgid "Provider"
+msgstr "Tiekėjas"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:398
+msgid "Proxy Server"
+msgstr "Įgaliotasis serveris"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/tw.twnic.dns.json:2
+msgid "Quad 101 (TW)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.quad9.json:2
+msgid "Quad 9"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:319
+msgid "Restart"
+msgstr "Paleisti iš naujo"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:313
+msgid "Restarting %s service"
+msgstr "Iš naujo pasileidžia „%s“ tarnyba"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/lu.restena.kaitain.json:2
+msgid "Restena DNS (LU)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.rethinkdns.sky.json:2
+msgid "Rethink DNS"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/cn.rubyfish.dns.json:2
+msgid "RubyFish (CN)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:370
+msgid "Run As Group"
+msgstr "Vykdyti kaip grupę"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:365
+msgid "Run As User"
+msgstr "Vykdyti kaip vartotojas"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/io.seby.doh-2.json:2
+msgid "Seby DNS (AU)"
+msgstr "„Seby DNS (AU)“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.quad9.json:18
+msgid "Secured"
+msgstr "Apsaugota"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.quad9.json:26
+msgid "Secured with ECS Support"
+msgstr "Apsaugota su „ECS“ palaikymu"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.cloudflare-dns.json:22
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/org.cleanbrowsing.doh.json:22
+msgid "Security Filter"
+msgstr "Apsaugos filtras"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:203
+msgid "See the %sREADME%s for details."
+msgstr "Peržiūrėkite %s„SKAITYKITEMANE“%s failą, norint sužinoti daugiau."
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:118
+msgid "Select the DNSMASQ Configs to update"
+msgstr "Pasirinkite „DNSMASQ“ konfigūracijas, norint atnaujinti"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:402
+msgid "Service Control"
+msgstr "Tarnybos valdymas"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:201
+msgid "Service Instances"
+msgstr "Tarnybų egzemplioriai"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:165
+msgid "Service Status"
+msgstr "Tarnybos būsena"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/one.comss.dns.json:13
+msgid "Siberia"
+msgstr "Sibiras"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.blahdns.doh.json:30
+msgid "Singapore"
+msgstr "Singapūras"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/org.snopyta.dns.doh.fi.json:2
+msgid "Snopyta DNS (FI)"
+msgstr "„Snopyta DNS (FI)“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:22
+msgid "Spain"
+msgstr "Ispanija"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/co.oszx.dns.json:18
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.adguard.dns.json:18
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.cloudflare-dns.json:18
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.controld.freedns.json:18
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.opendns.doh.json:18
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/gr.libredns.doh.json:18
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.mullvad.doh.json:19
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.quad9.json:14
+msgid "Standard"
+msgstr "Standartas"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:300
+msgid "Start"
+msgstr "Pradėti"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:294
+msgid "Starting %s service"
+msgstr "Pradedama %s tarnyba"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:338
+msgid "Stop"
+msgstr "Stop"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:332
+msgid "Stopping %s service"
+msgstr "Stabdoma „%s“ tarnyba"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/ch.switch.dns.json:2
+msgid "Switch DNS (CH)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.blahdns.doh.json:14
+msgid "Switzerland"
+msgstr "Šveicarija"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/status/include/71_https-dns-proxy.js:148
+msgid "There are no active instances."
+msgstr "Nėra aktyvių egzempliorių."
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/app.tiarap.doh.json:2
+msgid "Tiarap Public DNS (JP)"
+msgstr "„Tiarap Viešas DNS (JP)“"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:18
+msgid "US/Chicago"
+msgstr "JAV/Čikaga"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:34
+msgid "US/Los Angeles"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:46
+msgid "US/New York"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:243
+msgid "Unknown"
+msgstr "Nežinomas"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.quad9.json:22
+msgid "Unsecured"
+msgstr "Neapsaugotas"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:82
+msgid "Update DNSMASQ Config on Start/Stop"
+msgstr "Atnaujinti „DNSMASQ“ konfigūracija paleidus/išjungus"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:92
+msgid "Update all configs"
+msgstr "Atnaujinti visas konfigūracijas"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:93
+msgid "Update select configs"
+msgstr "Atnaujinti pasirinktas konfigūracijas"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:403
+msgid "Use HTTP/1"
+msgstr "Naudoti „HTTP/1“"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:414
+msgid "Use IPv6 resolvers"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:419
+msgid "Use any family DNS resolvers"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:407
+msgid "Use negotiated HTTP version"
+msgstr "Naudoti susitarta „HTTP“ versiją"
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/io.nextdns.dns.json:8
+msgid "Username"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/app.tiarap.doh.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/ca.cira.canadianshield.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/co.oszx.dns.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.adguard.dns.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.cloudflare-dns.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.controld.freedns.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.opendns.doh.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/gr.libredns.doh.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.mullvad.doh.json:9
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.quad9.json:8
+msgid "Variant"
+msgstr "Variantas"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:169
+msgid "Version %s - Running."
+msgstr "Versija %s – Veikia."
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:181
+msgid "Version %s - Stopped (Disabled)."
+msgstr "Versija %s – Sustabdytas/-a (Išjungtas/-a)."
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:179
+msgid "Version %s - Stopped."
+msgstr "Versija %s – Sustabdytas/-a."
+
+#~ msgid "%s"
+#~ msgstr "%s"
+
+#~ msgid "Update %s only"
+#~ msgstr "Atnaujinti tik %s"
+
+#~ msgid "Configuration"
+#~ msgstr "Konfigūravimas"
+
+#~ msgid "Loading"
+#~ msgstr "Kraunama"
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
--- /dev/null
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: nl\n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:258
+msgid "%s%s%s proxy at %s on port %s.%s"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:250
+msgid "%s%s%s proxy on port %s.%s"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/co.oszx.dns.json:14
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/gr.libredns.doh.json:14
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.mullvad.doh.json:15
+msgid "AdBlocking Filter"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.adguard.dns.json:2
+msgid "AdGuard"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.controld.freedns.json:30
+msgid "Ads + Malware + Social Filter"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.controld.freedns.json:26
+msgid "Ads + Malware Filter"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/org.cleanbrowsing.doh.json:14
+msgid "Adult Content Filter"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.ahadns.blitz.json:2
+msgid "AhaDNS Blitz"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:2
+msgid "AhaDNS Regional"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.alidns.dns.json:2
+msgid "AliDNS"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.applied-privacy.doh.json:2
+msgid "Applied Privacy DNS (AT)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:14
+msgid "Australia"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.blahdns.doh.json:2
+msgid "BlahDNS"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:168
+msgid ""
+"Blocks access to Mozilla Encrypted resolvers, forcing local devices to use "
+"router for DNS resolution (%smore information%s)."
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:152
+msgid ""
+"Blocks access to iCloud Private Relay resolvers, forcing local devices to "
+"use router for DNS resolution (%smore information%s)."
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:348
+msgid "Bootstrap DNS"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.cfiec.dns.json:2
+msgid "CFIEC Public IPv6 Only DNS (CN)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/ca.cira.canadianshield.json:2
+msgid "CIRA Canadian Shield"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:166
+msgid "Canary Domains Mozilla"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:150
+msgid "Canary Domains iCloud"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/org.cleanbrowsing.doh.json:2
+msgid "CleanBrowsing"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.cloudflare-dns.json:2
+msgid "Cloudflare"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/app.tiarap.doh.json:18
+msgid "Cloudlfare Cached"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/one.comss.dns.json:2
+msgid "Comss DNS (RU)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.controld.freedns.json:2
+msgid "ControlD"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.dnsforfamily.dns-doh.json:2
+msgid "DNS For Family"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/de.dnsforge.json:2
+msgid "DNS Forge (DE)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/pub.doh.json:2
+msgid "DNSPod Public DNS (CN)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.dnslify.doh.json:2
+msgid "DNSlify DNS"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:375
+msgid "DSCP Codepoint"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.decloudus.dns.json:2
+msgid "DeCloudUs DNS"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/ch.digitale-gesellschaft.dns.json:2
+msgid "Digitale Gesellschaft (CH)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/app.tiarap.doh.json:14
+msgid "Direct"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:376
+msgid "Disable"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:370
+msgid "Disabling %s service"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:94
+msgid "Do not update configs"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/cn.360.doh.json:2
+msgid "DoH 360 DNS (CN)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/sb.dns.json:2
+msgid "DoH DNS (SB)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:357
+msgid "Enable"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:351
+msgid "Enabling %s service"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ffmuc.doh.json:2
+msgid "FFMUC DNS (DE)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/ca.cira.canadianshield.json:14
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.adguard.dns.json:14
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.cloudflare-dns.json:14
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.controld.freedns.json:14
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.opendns.doh.json:14
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/org.cleanbrowsing.doh.json:18
+msgid "Family Filter"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/org.cleanbrowsing.doh.json:8
+msgid "Filter"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.ahadns.blitz.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.rethinkdns.sky.json:8
+msgid "Filters"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.blahdns.doh.json:22
+msgid "Finland"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/status/include/71_https-dns-proxy.js:102
+msgid "Force DNS Ports"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:171
+msgid "Force DNS ports:"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:140
+msgid "Force Router DNS"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:144
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:159
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:178
+msgid "Force Router DNS server to all local devices"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:408
+msgid "Force use of HTTP/1"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:420
+msgid "Force use of IPv6 DNS resolvers"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:141
+msgid "Forces Router DNS use on local devices, also known as DNS Hijacking."
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.blahdns.doh.json:18
+msgid "Germany"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/google.dns.json:2
+msgid "Google"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/rpcd/acl.d/luci-app-https-dns-proxy.json:3
+msgid "Grant UCI and file access for luci-app-https-dns-proxy"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/luci/menu.d/luci-app-https-dns-proxy.json:3
+msgid "HTTPS DNS Proxy"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:75
+msgid "HTTPS DNS Proxy - Configuration"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:205
+msgid "HTTPS DNS Proxy - Instances"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:161
+msgid "HTTPS DNS Proxy - Status"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/status/include/71_https-dns-proxy.js:55
+msgid "HTTPS DNS Proxy Instances"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.he.ordns.json:2
+msgid "Hurricane Electric"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.idnet.doh.json:2
+msgid "IDNet (UK)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/jp.iij.dns.public.json:2
+msgid "IIJ Public DNS (JP)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
+msgid ""
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
+"DNS%s will be automatically updated to use selected DoH providers (%smore "
+"information%s)."
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:26
+msgid "India"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:30
+msgid "Italy"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.blahdns.doh.json:26
+msgid "Japan"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/fi.lelux.resolver-eu.json:2
+msgid "Lelux DNS (FI)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:177
+msgid "Let local devices use Mozilla Private Relay"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:158
+msgid "Let local devices use iCloud Private Relay"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:143
+msgid "Let local devices use their own DNS servers if set"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/gr.libredns.doh.json:2
+msgid "LibreDNS (GR)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:353
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/status/include/71_https-dns-proxy.js:100
+msgid "Listen Address"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:359
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/status/include/71_https-dns-proxy.js:101
+msgid "Listen Port"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.blahdns.doh.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/one.comss.dns.json:7
+msgid "Location"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:387
+msgid "Logging File Path"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:381
+msgid "Logging Verbosity"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.controld.freedns.json:22
+msgid "Malware Filter"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/one.comss.dns.json:17
+msgid "Moscow, St Petersburg"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.mullvad.doh.json:2
+msgid "Mullvad"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/status/include/71_https-dns-proxy.js:99
+msgid "Name / Type"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:38
+msgid "Netherlands"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/io.nextdns.dns.json:2
+msgid "NextDNS.io"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:42
+msgid "Norway"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:187
+msgid "Not installed or not found"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/cz.nic.odvr.json:2
+msgid "ODVR (CZ)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/co.oszx.dns.json:2
+msgid "OSZX DNS (UK)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.opendns.doh.json:2
+msgid "OpenDNS"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:281
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:313
+msgid "Parameter"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:186
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:195
+msgid ""
+"Please note that %s is not supported on this system (%smore information%s)."
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:50
+msgid "Poland"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:392
+msgid "Polling Interval"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/ca.cira.canadianshield.json:18
+msgid "Private Filter"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/ca.cira.canadianshield.json:22
+msgid "Protected Filter"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:247
+msgid "Provider"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:398
+msgid "Proxy Server"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/tw.twnic.dns.json:2
+msgid "Quad 101 (TW)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.quad9.json:2
+msgid "Quad 9"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:319
+msgid "Restart"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:313
+msgid "Restarting %s service"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/lu.restena.kaitain.json:2
+msgid "Restena DNS (LU)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.rethinkdns.sky.json:2
+msgid "Rethink DNS"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/cn.rubyfish.dns.json:2
+msgid "RubyFish (CN)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:370
+msgid "Run As Group"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:365
+msgid "Run As User"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/io.seby.doh-2.json:2
+msgid "Seby DNS (AU)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.quad9.json:18
+msgid "Secured"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.quad9.json:26
+msgid "Secured with ECS Support"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.cloudflare-dns.json:22
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/org.cleanbrowsing.doh.json:22
+msgid "Security Filter"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:203
+msgid "See the %sREADME%s for details."
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:118
+msgid "Select the DNSMASQ Configs to update"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:402
+msgid "Service Control"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:201
+msgid "Service Instances"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:165
+msgid "Service Status"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/one.comss.dns.json:13
+msgid "Siberia"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.blahdns.doh.json:30
+msgid "Singapore"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/org.snopyta.dns.doh.fi.json:2
+msgid "Snopyta DNS (FI)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:22
+msgid "Spain"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/co.oszx.dns.json:18
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.adguard.dns.json:18
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.cloudflare-dns.json:18
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.controld.freedns.json:18
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.opendns.doh.json:18
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/gr.libredns.doh.json:18
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.mullvad.doh.json:19
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.quad9.json:14
+msgid "Standard"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:300
+msgid "Start"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:294
+msgid "Starting %s service"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:338
+msgid "Stop"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:332
+msgid "Stopping %s service"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/ch.switch.dns.json:2
+msgid "Switch DNS (CH)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.blahdns.doh.json:14
+msgid "Switzerland"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/status/include/71_https-dns-proxy.js:148
+msgid "There are no active instances."
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/app.tiarap.doh.json:2
+msgid "Tiarap Public DNS (JP)"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:18
+msgid "US/Chicago"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:34
+msgid "US/Los Angeles"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.ahadns.doh.json:46
+msgid "US/New York"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:243
+msgid "Unknown"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.quad9.json:22
+msgid "Unsecured"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:82
+msgid "Update DNSMASQ Config on Start/Stop"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:92
+msgid "Update all configs"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:93
+msgid "Update select configs"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:403
+msgid "Use HTTP/1"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:414
+msgid "Use IPv6 resolvers"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:419
+msgid "Use any family DNS resolvers"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:407
+msgid "Use negotiated HTTP version"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/io.nextdns.dns.json:8
+msgid "Username"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/app.tiarap.doh.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/ca.cira.canadianshield.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/co.oszx.dns.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.adguard.dns.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.cloudflare-dns.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.controld.freedns.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/com.opendns.doh.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/gr.libredns.doh.json:8
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.mullvad.doh.json:9
+#: applications/luci-app-https-dns-proxy/root/usr/share/https-dns-proxy/providers/net.quad9.json:8
+msgid "Variant"
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:169
+msgid "Version %s - Running."
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:181
+msgid "Version %s - Stopped (Disabled)."
+msgstr ""
+
+#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/https-dns-proxy/status.js:179
+msgid "Version %s - Stopped."
+msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
-"Dacă este selectată opțiunea de actualizare, secțiunea %s'DNS forwardings' "
+"Dacă este selectată opțiunea de actualizare, secțiunea %s'DNS Forwards' "
"din DHCP și DNS%s va fi actualizată automat pentru a utiliza furnizorii DoH "
"selectați (%smai multe informații%s)."
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
-"Если выбрана опция обновления, то раздел %s'DNS forwardings' в DHCP и DNS%s "
+"Если выбрана опция обновления, то раздел %s'DNS Forwards' в DHCP и DNS%s "
"будет автоматически обновлен для использования выбранных провайдеров DoH "
"(%sдополнительная информация%s)."
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
#: applications/luci-app-https-dns-proxy/htdocs/luci-static/resources/view/https-dns-proxy/overview.js:84
msgid ""
-"If update option is selected, the %s'DNS forwardings' section of DHCP and "
+"If update option is selected, the %s'DNS Forwards' section of DHCP and "
"DNS%s will be automatically updated to use selected DoH providers (%smore "
"information%s)."
msgstr ""
msgstr "نظام أسماء النطاقات"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "شحن DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr ""
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr ""
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr ""
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "ডিএনএস"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr ""
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "Reenviaments DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "Přeposílání DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "DNS-videresendelser"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "DNS-Weiterleitungen"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "Προωθήσεις DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS (Domain Name System)"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr ""
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "Reenvíos de DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "DNS-edelleenvälitys"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "transmissions DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr ""
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr ""
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr ""
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "DNS továbbítások"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "Inoltri DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "DNSフォワーディング"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr ""
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "„DNS“"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "„DNS“ perleidimai"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr ""
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr ""
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr ""
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "DNS videresendinger"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
-msgstr "DNS forwardings"
+msgid "DNS Forwards"
+msgstr "DNS Forwards"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgid "DNS query port"
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "Przekazywania DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "Encaminhamentos DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "Encaminhamentos do DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "Redirecționări DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "Перенаправление запросов DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "Presmerovania DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
-msgstr ""
+msgid "DNS Forwards"
+msgstr "DNS Vidarebefordringar"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgid "DNS query port"
msgstr ""
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr ""
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "DNS iletimleri"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "Переспрямовування запитів DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr ""
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr ""
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "Chuyển tiếp DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "DNS 转发"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
msgstr "DNS"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:397
-msgid "DNS forwardings"
+msgid "DNS Forwards"
msgstr "DNS封包轉發"
#: modules/luci-mod-network/htdocs/luci-static/resources/view/network/dhcp.js:670
return true;
}
+function expandAndFormatMAC(macs) {
+ let result = [];
+
+ macs.forEach(mac => {
+ if (isValidMAC(mac)) {
+ const expandedMac = mac.split(':').map(part => {
+ return (part.length === 1 && part !== '*') ? '0' + part : part;
+ }).join(':').toUpperCase();
+ result.push(expandedMac);
+ }
+ });
+
+ return result.length ? result.join(' ') : null;
+}
+
+function isValidMAC(sid, s) {
+ if (!s)
+ return true;
+
+ let macaddrs = L.toArray(s);
+
+ for (var i = 0; i < macaddrs.length; i++)
+ if (!macaddrs[i].match(/^(([0-9a-f]{1,2}|\*)[:-]){5}([0-9a-f]{1,2}|\*)$/i))
+ return _('Expecting a valid MAC address, optionally including wildcards') + _('; invalid MAC: ') + macaddrs[i];
+
+ return true;
+}
+
function validateMACAddr(pools, sid, s) {
if (s == null || s == '')
return true;
}
}
- return true;
+ return isValidMAC(sid, s);
}
return view.extend({
networks = hosts_duids_pools[3],
m, s, o, ss, so;
+ let noi18nstrings = {
+ etc_hosts: '<code>/etc/hosts</code>',
+ etc_ethers: '<code>/etc/ethers</code>',
+ localhost_v6: '<code>::1</code>',
+ loopback_slash_8_v4: '<code>127.0.0.0/8</code>',
+ not_found: '<code>Not found</code>',
+ nxdomain: '<code>NXDOMAIN</code>',
+ rfc_1918_link: '<a href="https://www.rfc-editor.org/rfc/rfc1918">RFC1918</a>',
+ rfc_4193_link: '<a href="https://www.rfc-editor.org/rfc/rfc4193">RFC4193</a>',
+ rfc_4291_link: '<a href="https://www.rfc-editor.org/rfc/rfc4291">RFC4291</a>',
+ rfc_6303_link: '<a href="https://www.rfc-editor.org/rfc/rfc6303">RFC6303</a>',
+ reverse_arpa: '<code>*.IN-ADDR.ARPA,*.IP6.ARPA</code>',
+ servers_file_entry01: '<code>server=1.2.3.4</code>',
+ servers_file_entry02: '<code>server=/domain/1.2.3.4</code>',
+
+ };
+
+ function customi18n(template, values) {
+ if (!values)
+ values = noi18nstrings;
+ return template.replace(/\{(\w+)\}/g, (match, key) => values[key] || match);
+ };
+
m = new form.Map('dhcp', _('DHCP and DNS'),
_('Dnsmasq is a lightweight <abbr title="Dynamic Host Configuration Protocol">DHCP</abbr> server and <abbr title="Domain Name System">DNS</abbr> forwarder.'));
s.tab('relay', _('Relay'));
s.tab('srvhosts', _('SRV'));
s.tab('mxhosts', _('MX'));
+ s.tab('cnamehosts', _('CNAME'));
s.tab('pxe_tftp', _('PXE/TFTP'));
s.taboption('filteropts', form.Flag, 'domainneeded',
_('Domain required'),
- _('Do not forward DNS queries without dots or domain parts.'));
-
+ _('Never forward DNS queries which lack dots or domain parts.') + '<br />' +
+ customi18n(_('Names not in {etc_hosts} are answered {not_found}.') )
+ );
s.taboption('general', form.Flag, 'authoritative',
_('Authoritative'),
_('This is the only DHCP server in the local network.'));
- s.taboption('general', form.Value, 'local',
- _('Local server'),
- _('Never forward matching domains and subdomains, resolve from DHCP or hosts files only.'));
+ o = s.taboption('general', form.Value, 'local',
+ _('Resolve these locally'),
+ _('Never forward these matching domains or subdomains; resolve from DHCP or hosts files only.'));
+ o.placeholder = '/internal.example.com/private.example.com/example.org';
s.taboption('general', form.Value, 'domain',
_('Local domain'),
o = s.taboption('logging', form.Flag, 'logqueries',
_('Log queries'),
- _('Write received DNS queries to syslog.'));
+ _('Write received DNS queries to syslog.') + ' ' + _('Dump cache on SIGUSR1, include requesting IP.'));
o.optional = true;
o = s.taboption('logging', form.Flag, 'logdhcp',
o.value('-', _('stderr'));
o = s.taboption('forward', form.DynamicList, 'server',
- _('DNS forwardings'),
- _('List of upstream resolvers to forward queries to.'));
+ _('DNS Forwards'),
+ _('Forward specific domain queries to specific upstream servers.'));
o.optional = true;
- o.placeholder = '/example.org/10.1.2.3';
+ o.placeholder = '/*.example.org/10.1.2.3';
o.validate = validateServerSpec;
o = s.taboption('general', form.DynamicList, 'address',
_('Addresses'),
_('Resolve specified FQDNs to an IP.') + '<br />' +
- _('Syntax: <code>/fqdn[/fqdn…]/[ipaddr]</code>.') + '<br />' +
- _('<code>/#/</code> matches any domain. <code>/example.com/</code> returns NXDOMAIN.') + '<br />' +
- _('<code>/example.com/#</code> returns NULL addresses (<code>0.0.0.0</code> and <code>::</code>) for example.com and its subdomains.'));
+ customi18n(_('Syntax: {code_syntax}.'),
+ {code_syntax: '<code>/fqdn[/fqdn…]/[ipaddr]</code>'}) + '<br />' +
+ customi18n(_('{example_nx} returns {nxdomain}.',
+ 'hint: <code>/example.com/</code> returns <code>NXDOMAIN</code>.'),
+ {example_nx: '<code>/example.com/</code>', nxdomain: '<code>NXDOMAIN</code>'}) + '<br />' +
+ customi18n(_('{any_domain} matches any domain (and returns {nxdomain}).',
+ 'hint: <code>/#/</code> matches any domain (and returns NXDOMAIN).'),
+ {any_domain:'<code>/#/</code>', nxdomain: '<code>NXDOMAIN</code>'}) + '<br />' +
+ customi18n(
+ _('{example_null} returns {null_addr} addresses ({null_ipv4}, {null_ipv6}) for {example_com} and its subdomains.',
+ 'hint: <code>/example.com/#</code> returns NULL addresses (<code>0.0.0.0</code>, <code>::</code>) for example.com and its subdomains.'),
+ { example_null: '<code>/example.com/#</code>',
+ null_addr: '<code>NULL</code>',
+ null_ipv4: '<code>0.0.0.0</code>',
+ null_ipv6: '<code>::</code>',
+ example_com: '<code>example.com</code>',
+ }
+ )
+ );
o.optional = true;
o.placeholder = '/router.local/router.lan/192.168.0.1';
o = s.taboption('filteropts', form.Flag, 'rebind_protection',
_('Rebind protection'),
- _('Discard upstream responses containing <a href="%s">RFC1918</a> addresses.').format('https://www.rfc-editor.org/rfc/rfc1918') + '<br />' +
- _('Discard also upstream responses containing <a href="%s">RFC4193</a>, Link-Local and private IPv4-Mapped <a href="%s">RFC4291</a> IPv6 Addresses.').format('https://www.rfc-editor.org/rfc/rfc4193', 'https://www.rfc-editor.org/rfc/rfc4291'));
+ customi18n(_('Discard upstream responses containing {rfc_1918_link} addresses.') ) + '<br />' +
+ customi18n(_('Discard also upstream responses containing {rfc_4193_link}, Link-Local and private IPv4-Mapped {rfc_4291_link} IPv6 Addresses.') )
+ );
o.rmempty = false;
o = s.taboption('filteropts', form.Flag, 'rebind_localhost',
_('Allow localhost'),
- _('Exempt <code>127.0.0.0/8</code> and <code>::1</code> from rebinding checks, e.g. for RBL services.'));
+ customi18n(
+ _('Exempt {loopback_slash_8_v4} and {localhost_v6} from rebinding checks, e.g. for <abbr title="Real-time Block List">RBL</abbr> services.')
+ )
+ );
o.depends('rebind_protection', '1');
o = s.taboption('filteropts', form.DynamicList, 'rebind_domain',
_('Domain whitelist'),
- _('List of domains to allow RFC1918 responses for.'));
+ customi18n(_('List of domains to allow {rfc_1918_link} responses for.') )
+ );
o.depends('rebind_protection', '1');
o.optional = true;
o.placeholder = 'ihost.netflix.com';
o = s.taboption('devices', form.Flag, 'nonwildcard',
_('Non-wildcard'),
- _('Bind dynamically to interfaces rather than wildcard address.'));
+ _('Bind only to configured interface addresses, instead of the wildcard address.'));
o.default = o.enabled;
o.optional = false;
o.rmempty = true;
return true;
};
+
so = ss.option(widgets.NetworkSelect, 'interface', _('Only accept replies via'));
so.optional = true;
so.rmempty = false;
so.placeholder = 'lan';
s.taboption('files', form.Flag, 'readethers',
- _('Use <code>/etc/ethers</code>'),
- _('Read <code>/etc/ethers</code> to configure the DHCP server.'));
+ customi18n(_('Use {etc_ethers}') ),
+ customi18n(_('Read {etc_ethers} to configure the DHCP server.') )
+ );
s.taboption('files', form.Value, 'leasefile',
_('Lease file'),
o.optional = true;
o = s.taboption('files', form.Flag, 'nohosts',
- _('Ignore <code>/etc/hosts</code>'));
+ customi18n(_('Ignore {etc_hosts}') )
+ );
o.optional = true;
o = s.taboption('files', form.DynamicList, 'addnhosts',
o = s.taboption('filteropts', form.Flag, 'boguspriv',
_('Filter private'),
- _('Do not forward reverse lookups for local networks.'));
+ customi18n(
+ _('Reject reverse lookups to {rfc_6303_link} IP ranges ({reverse_arpa}) not in {etc_hosts}.') )
+ );
o.default = o.enabled;
s.taboption('filteropts', form.Flag, 'filterwin2k',
s.taboption('filteropts', form.Flag, 'localise_queries',
_('Localise queries'),
- _('Return answers to DNS queries matching the subnet from which the query was received if multiple IPs are available.'));
+ customi18n(_('Limit response records (from {etc_hosts}) to those that fall within the subnet of the querying interface.') ) + '<br />' +
+ _('This prevents unreachable IPs in subnets not accessible to you.') + '<br />' +
+ _('Note: IPv4 only.'));
if (L.hasSystemFeature('dnsmasq', 'dnssec')) {
o = s.taboption('dnssecopt', form.Flag, 'dnssec',
o = s.taboption('forward', form.Value, 'serversfile',
_('Additional servers file'),
- _('File listing upstream resolvers, optionally domain-specific, e.g. <code>server=1.2.3.4</code>, <code>server=/domain/1.2.3.4</code>.'));
+ customi18n(_('File listing upstream resolvers, optionally domain-specific, e.g. {servers_file_entry01}, {servers_file_entry02}.') )
+ );
o.placeholder = '/etc/dnsmasq.servers';
o = s.taboption('general', form.Flag, 'allservers',
o.optional = true;
o = s.taboption('filteropts', form.DynamicList, 'bogusnxdomain',
- _('IPs to override with NXDOMAIN'),
- _('List of IP addresses to convert into NXDOMAIN responses.'));
+ customi18n(_('IPs to override with {nxdomain}') ),
+ customi18n(_('Transform replies which contain the specified addresses or subnets into {nxdomain} responses.') )
+ );
o.optional = true;
o.placeholder = '64.94.110.11';
_('Number of cached DNS entries, 10000 is maximum, 0 is no caching.'));
o.optional = true;
o.datatype = 'range(0,10000)';
- o.placeholder = 150;
+ o.placeholder = 1000;
o = s.taboption('limits', form.Value, 'min_cache_ttl',
_('Min cache TTL'),
ss.sortable = true;
ss.rowcolors = true;
- so = ss.option(form.Value, 'srv', _('SRV'), _('Syntax: <code>_service._proto.example.com</code>.'));
+ so = ss.option(form.Value, 'srv', _('SRV'), _('Syntax:') + ' ' + '<code>_service._proto.example.com.</code>');
so.rmempty = false;
so.datatype = 'hostname';
- so.placeholder = '_sip._tcp.example.com';
+ so.placeholder = '_sip._tcp.example.com.';
so = ss.option(form.Value, 'target', _('Target'), _('CNAME or fqdn'));
so.rmempty = false;
so.datatype = 'hostname';
- so.placeholder = 'sip.example.com';
+ so.placeholder = 'sip.example.com.';
so = ss.option(form.Value, 'port', _('Port'));
so.rmempty = false;
so = ss.option(form.Value, 'domain', _('Domain'));
so.rmempty = false;
so.datatype = 'hostname';
- so.placeholder = 'example.com';
+ so.placeholder = 'example.com.';
so = ss.option(form.Value, 'relay', _('Relay'));
so.rmempty = false;
so.datatype = 'hostname';
- so.placeholder = 'relay.example.com';
+ so.placeholder = 'relay.example.com.';
so = ss.option(form.Value, 'pref', _('Priority'), _('Ordinal: lower comes first.'));
so.rmempty = true;
so.datatype = 'range(0,65535)';
so.placeholder = '0';
+ o = s.taboption('cnamehosts', form.SectionValue, '__cname__', form.TableSection, 'cname', null,
+ _('Set an alias for a hostname.'));
+
+ ss = o.subsection;
+
+ ss.addremove = true;
+ ss.anonymous = true;
+ ss.sortable = true;
+ ss.rowcolors = true;
+ ss.nodescriptions = true;
+
+ so = ss.option(form.Value, 'cname', _('Domain'));
+ so.rmempty = false;
+ so.datatype = 'hostname';
+ so.placeholder = 'www.example.com.';
+
+ so = ss.option(form.Value, 'target', _('Target'));
+ so.rmempty = false;
+ so.datatype = 'hostname';
+ so.placeholder = 'example.com.';
+
o = s.taboption('hosts', form.SectionValue, '__hosts__', form.GridSection, 'domain', null,
_('Hostnames are used to bind a domain name to an IP address. This setting is redundant for hostnames already configured with static leases, but it can be useful to rebind an FQDN.'));
so.value('ip6', _('IPv6'));
o = s.taboption('leases', form.SectionValue, '__leases__', form.GridSection, 'host', null,
- _('Static leases are used to assign fixed IP addresses and symbolic hostnames to DHCP clients. They are also required for non-dynamic interface configurations where only hosts with a corresponding lease are served.') + '<br />' +
- _('Use the <em>Add</em> Button to add a new lease entry. The <em>MAC address</em> identifies the host, the <em>IPv4 address</em> specifies the fixed address to use, and the <em>Hostname</em> is assigned as a symbolic name to the requesting host. The optional <em>Lease time</em> can be used to set non-standard host-specific lease time, e.g. 12h, 3d or infinite.'));
+ _('Static leases are used to assign fixed IP addresses and symbolic hostnames to DHCP clients. They are also required for non-dynamic interface configurations where only hosts with a corresponding lease are served.') + '<br /><br />' +
+ _('Use the <em>Add</em> Button to add a new lease entry. The <em>MAC address</em> identifies the host, the <em>IPv4 address</em> specifies the fixed address to use, and the <em>Hostname</em> is assigned as a symbolic name to the requesting host. The optional <em>Lease time</em> can be used to set non-standard host-specific lease time, e.g. 12h, 3d or infinite.') + '<br /><br />' +
+ _('The tag construct filters which host directives are used; more than one tag can be provided, in this case the request must match all of them. Tagged directives are used in preference to untagged ones. Note that one of mac, duid or hostname still needs to be specified (can be a wildcard).'));
ss = o.subsection;
ss.addremove = true;
ss.anonymous = true;
ss.sortable = true;
+ ss.nodescriptions = true;
+ ss.max_cols = 8;
+ ss.modaltitle = _('Edit static lease');
- so = ss.option(form.Value, 'name', _('Hostname'));
+ so = ss.option(form.Value, 'name',
+ _('Hostname'),
+ _('Optional hostname to assign'));
so.validate = validateHostname;
so.rmempty = true;
so.write = function(section, value) {
uci.unset('dhcp', section, 'dns');
};
- so = ss.option(form.Value, 'mac', _('MAC address'));
- so.datatype = 'list(macaddr)';
+ //this can be a .DynamicList or a .Value with a widget and dnsmasq handles multimac OK.
+ so = ss.option(form.DynamicList, 'mac',
+ _('MAC address(es)'),
+ _('The hardware address(es) of this entry/host.') + '<br /><br />' +
+ _('In DHCPv4, it is possible to include more than one mac address. This allows an IP address to be associated with multiple macaddrs, and dnsmasq abandons a DHCP lease to one of the macaddrs when another asks for a lease. It only works reliably if only one of the macaddrs is active at any time.'));
+ //As a special case, in DHCPv4, it is possible to include more than one hardware address. eg: --dhcp-host=11:22:33:44:55:66,12:34:56:78:90:12,192.168.0.2 This allows an IP address to be associated with multiple hardware addresses, and gives dnsmasq permission to abandon a DHCP lease to one of the hardware addresses when another one asks for a lease
so.rmempty = true;
so.cfgvalue = function(section) {
- var macs = L.toArray(uci.get('dhcp', section, 'mac')),
- result = [];
-
- for (var i = 0, mac; (mac = macs[i]) != null; i++)
- if (/^([0-9a-fA-F]{1,2}):([0-9a-fA-F]{1,2}):([0-9a-fA-F]{1,2}):([0-9a-fA-F]{1,2}):([0-9a-fA-F]{1,2}):([0-9a-fA-F]{1,2})$/.test(mac))
- result.push('%02X:%02X:%02X:%02X:%02X:%02X'.format(
- parseInt(RegExp.$1, 16), parseInt(RegExp.$2, 16),
- parseInt(RegExp.$3, 16), parseInt(RegExp.$4, 16),
- parseInt(RegExp.$5, 16), parseInt(RegExp.$6, 16)));
-
- return result.length ? result.join(' ') : null;
- };
- so.renderWidget = function(section_id, option_index, cfgvalue) {
- var node = form.Value.prototype.renderWidget.apply(this, [section_id, option_index, cfgvalue]),
- ipopt = this.section.children.filter(function(o) { return o.option == 'ip' })[0];
-
- node.addEventListener('cbi-dropdown-change', L.bind(function(ipopt, section_id, ev) {
- var mac = ev.detail.value.value;
- if (mac == null || mac == '' || !hosts[mac])
- return;
-
- var iphint = L.toArray(hosts[mac].ipaddrs || hosts[mac].ipv4)[0];
- if (iphint == null)
- return;
-
- var ip = ipopt.formvalue(section_id);
- if (ip != null && ip != '')
- return;
-
- var node = ipopt.map.findElement('id', ipopt.cbid(section_id));
- if (node)
- dom.callClassMethod(node, 'setValue', iphint);
- }, this, ipopt, section_id));
-
- return node;
+ var macs = L.toArray(uci.get('dhcp', section, 'mac'));
+ return expandAndFormatMAC(macs);
};
+ //removed jows renderwidget function which hindered multi-mac entry
so.validate = validateMACAddr.bind(so, pools);
Object.keys(hosts).forEach(function(mac) {
var hint = hosts[mac].name || L.toArray(hosts[mac].ipaddrs || hosts[mac].ipv4)[0];
so.value(mac, hint ? '%s (%s)'.format(mac, hint) : mac);
});
- so = ss.option(form.Value, 'ip', _('IPv4 address'));
+ so = ss.option(form.Value, 'ip', _('IPv4 address'), _('The IP address to be used for this host, or <em>ignore</em> to ignore any DHCP request from this host.'));
+ so.value('ignore', _('Ignore'));
so.datatype = 'or(ip4addr,"ignore")';
so.validate = function(section, value) {
var m = this.section.formvalue(section, 'mac'),
so.value(ipv4, ipaddrs[ipv4] ? '%s (%s)'.format(ipv4, ipaddrs[ipv4]) : ipv4);
});
- so = ss.option(form.Value, 'leasetime', _('Lease time'));
+ so = ss.option(form.Value, 'leasetime',
+ _('Lease time'),
+ _('Host-specific lease time, e.g. <code>5m</code>, <code>3h</code>, <code>7d</code>.'));
so.rmempty = true;
-
- so = ss.option(form.Value, 'duid', _('DUID'));
+ so.value('5m', _('5m (5 minutes)'));
+ so.value('3h', _('3h (3 hours)'));
+ so.value('12h', _('12h (12 hours - default)'));
+ so.value('7d', _('7d (7 days)'));
+ so.value('infinite', _('infinite (lease does not expire)'));
+
+ so = ss.option(form.Value, 'duid',
+ _('DUID'),
+ _('The DHCPv6-DUID (DHCP unique identifier) of this host.'));
so.datatype = 'and(rangelength(20,36),hexstring)';
Object.keys(duids).forEach(function(duid) {
so.value(duid, '%s (%s)'.format(duid, duids[duid].hostname || duids[duid].macaddr || duids[duid].ip6addr || '?'));
});
- so = ss.option(form.Value, 'hostid', _('IPv6 suffix (hex)'));
+ so = ss.option(form.Value, 'hostid',
+ _('IPv6-Suffix (hex)'),
+ _('The IPv6 interface identifier (address suffix) as hexadecimal number (max. 16 chars).'));
+ so.datatype = 'and(rangelength(0,16),hexstring)';
+
+ so = ss.option(form.DynamicList, 'tag',
+ _('Tag'),
+ _('Assign new, freeform tags to this entry.'));
+
+ so = ss.option(form.DynamicList, 'match_tag',
+ _('Match Tag'),
+ _('When a host matches an entry then the special tag %s is set. Use %s to match all known hosts.').format('<code>known</code>', '<code>known</code>') + '<br /><br />' +
+ _('Ignore requests from unknown machines using %s.').format('<code>!known</code>') + '<br /><br />' +
+ _('If a host matches an entry which cannot be used because it specifies an address on a different subnet, the tag %s is set.').format('<code>known-othernet</code>'));
+ so.value('known', _('known'));
+ so.value('!known', _('!known (not known)'));
+ so.value('known-othernet', _('known-othernet (on different subnet)'));
+ so.optional = true;
so = ss.option(form.Value, 'instance',
- _('Instance'));
+ _('Instance'),
+ _('Dnsmasq instance to which this DHCP host section is bound. If unspecified, the section is valid for all dnsmasq instances.'));
so.optional = true;
Object.values(L.uci.sections('dhcp', 'dnsmasq')).forEach(function(val, index) {
so.value(generateDnsmasqInstanceEntry(val));
});
+
+ so = ss.option(form.Flag, 'broadcast',
+ _('Broadcast'),
+ _('Force broadcast DHCP response.'));
+
+ so = ss.option(form.Flag, 'dns',
+ _('Forward/reverse DNS'),
+ _('Add static forward and reverse DNS entries for this host.'));
+
o = s.taboption('leases', CBILeaseStatus, '__status__');
if (has_dhcpv6)