diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a6e4a2b..49f07cb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -41,7 +41,7 @@ jobs: run: npm ci - name: Build docs - run: mkdocs build + run: mkdocs build --strict - name: Test run: npm test diff --git a/docs/core/pihole-command.md b/docs/core/pihole-command.md index 0b2451d..4aae9e5 100644 --- a/docs/core/pihole-command.md +++ b/docs/core/pihole-command.md @@ -28,7 +28,7 @@ Pi-hole makes use of many commands, and here we will break down those required t | [Version](#version) | `pihole version` | | [Uninstall](#uninstall) | `pihole uninstall` | | [Status](#status) | `pihole status` | -| [Enable & Disable](#enable-&-disable) | `pihole enable` | +| [Enable & Disable](#enable-disable) | `pihole enable` | | [Restart DNS](#restart-dns) | `pihole restartdns` | | [Checkout](#checkout) | `pihole checkout` | diff --git a/docs/database/ftl.md b/docs/database/ftl.md index 57cf03e..e111c59 100644 --- a/docs/database/ftl.md +++ b/docs/database/ftl.md @@ -108,24 +108,24 @@ ID | Resource Record (a.k.a. query type) 15 | `SVCB` 16 | `HTTPS` -Any other query type will be stored with an offset of 100, i.e., `TYPE66` will be stored as `166` in the database (see [pi-hole/FTL #1013](https://github.com/pi-hole/FTL/pull/1013)). This is done to allow for future extensions of the query type list without having to change the database schema. The `OTHER` query type is deprecated since Pi-hole FTL v5.4 (released Jan 2021) and not used anymore. It is kept for backwards compatibility. Note that `OTHER` is still used for the [regex extension `querytype=`](../regex/pi-hole.md#querytype) filter and used for all queries not covered by the above list. +Any other query type will be stored with an offset of 100, i.e., `TYPE66` will be stored as `166` in the database (see [pi-hole/FTL #1013](https://github.com/pi-hole/FTL/pull/1013)). This is done to allow for future extensions of the query type list without having to change the database schema. The `OTHER` query type is deprecated since Pi-hole FTL v5.4 (released Jan 2021) and not used anymore. It is kept for backwards compatibility. Note that `OTHER` is still used for the [regex extension `querytype=`](../regex/pi-hole.md#only-match-specific-query-types) filter and used for all queries not covered by the above list. ### Supported status types ID | Status | | Details --- | --- | --- | --- 0 | Unknown | ❔ | Unknown status (not yet known) -1 | Blocked | ❌ | Domain contained in [gravity database](gravity/index.md#gravity-table-gravity) +1 | Blocked | ❌ | Domain contained in [gravity database](gravity/index.md#gravity-tables-gravity-and-antigravity) 2 | Allowed | ✅ | Forwarded 3 | Allowed | ✅ | Replied from cache -4 | Blocked | ❌ | Domain matched by a [regex blacklist](gravity/index.md#regex-table-regex) filter -5 | Blocked | ❌ | Domain contained in [exact blacklist](gravity/index.md#blacklist-table-blacklist) +4 | Blocked | ❌ | Domain matched by a [regex blacklist](gravity/index.md#domain-tables-domainlist) filter +5 | Blocked | ❌ | Domain contained in [exact blacklist](gravity/index.md#domain-tables-domainlist) 6 | Blocked | ❌ | By upstream server (known blocking page IP address) 7 | Blocked | ❌ | By upstream server (`0.0.0.0` or `::`) 8 | Blocked | ❌ | By upstream server (`NXDOMAIN` with `RA` bit unset) -9 | Blocked | ❌ | Domain contained in [gravity database](gravity/index.md#gravity-table-gravity)
*Blocked during deep CNAME inspection* -10 | Blocked | ❌ | Domain matched by a [regex blacklist](gravity/index.md#regex-table-regex) filter
*Blocked during deep CNAME inspection* -11 | Blocked | ❌ | Domain contained in [exact blacklist](gravity/index.md#blacklist-table-blacklist)
*Blocked during deep CNAME inspection* +9 | Blocked | ❌ | Domain contained in [gravity database](gravity/index.md#gravity-tables-gravity-and-antigravity)
*Blocked during deep CNAME inspection* +10 | Blocked | ❌ | Domain matched by a [regex blacklist](gravity/index.md#domain-tables-domainlist) filter
*Blocked during deep CNAME inspection* +11 | Blocked | ❌ | Domain contained in [exact blacklist](gravity/index.md#domain-tables-domainlist)
*Blocked during deep CNAME inspection* 12 | Allowed | ✅ | Retried query 13 | Allowed | ✅ | Retried but ignored query (this may happen during ongoing DNSSEC validation) 14 | Allowed | ✅ | Already forwarded, not forwarding again diff --git a/docs/ftldns/interfaces.md b/docs/ftldns/interfaces.md index c57edab..f803128 100644 --- a/docs/ftldns/interfaces.md +++ b/docs/ftldns/interfaces.md @@ -2,7 +2,7 @@ Pi-hole offers three choices for interface on its dashboard: -![Available interface settings](/images/interface-settings.png) +![Available interface settings](../images/interface-settings.png) By default, FTL binds the wildcard address. It does this for all options except *Bind only on interface `enp2s0`*. Your Pi-hole then discards requests that it shouldn't reply to. This has the big advantage of working even when interfaces come and go and change address (this happens way more often than one would think). diff --git a/docs/guides/dns/cloudflared.md b/docs/guides/dns/cloudflared.md index 3ea4e29..7ec07ac 100644 --- a/docs/guides/dns/cloudflared.md +++ b/docs/guides/dns/cloudflared.md @@ -154,7 +154,7 @@ google.com. 191 IN A 172.217.22.14 Finally, configure Pi-hole to use the local `cloudflared` service as the upstream DNS server by specifying `127.0.0.1#5053` as the Custom DNS (IPv4): -![Screenshot of Pi-hole configuration](/images/DoHConfig.png) +![Screenshot of Pi-hole configuration](../../images/DoHConfig.png) (don't forget to hit Return or click on `Save`) diff --git a/docs/guides/dns/unbound.md b/docs/guides/dns/unbound.md index 11f1d68..dc3a068 100644 --- a/docs/guides/dns/unbound.md +++ b/docs/guides/dns/unbound.md @@ -179,7 +179,7 @@ The first command should give a status report of `SERVFAIL` and no IP address. T Finally, configure Pi-hole to use your recursive DNS server by specifying `127.0.0.1#5335` as the Custom DNS (IPv4): -![Upstream DNS Servers Configuration](/images/RecursiveResolver.png) +![Upstream DNS Servers Configuration](../../images/RecursiveResolver.png) (don't forget to hit Return or click on `Save`) diff --git a/docs/guides/misc/benchmark.md b/docs/guides/misc/benchmark.md index af281fb..f0cd149 100644 --- a/docs/guides/misc/benchmark.md +++ b/docs/guides/misc/benchmark.md @@ -29,7 +29,7 @@ The long-term database can be disabled by setting DBFILE= ``` -in `/etc/pihole/pihole-FTL.conf` and running `sudo pihole restartdns` (see also [here](/ftldns/configfile/#dbfile)). +in `/etc/pihole/pihole-FTL.conf` and running `sudo pihole restartdns` (see also [here](../../ftldns/configfile.md/#dbfile)). ### 2.2 Increase DNS cache size diff --git a/docs/guides/vpn/wireguard/client.md b/docs/guides/vpn/wireguard/client.md index e9433f1..346797b 100644 --- a/docs/guides/vpn/wireguard/client.md +++ b/docs/guides/vpn/wireguard/client.md @@ -235,6 +235,6 @@ peer: F+80gbmHVlOrU+es13S18oMEX2g= ⬅ Your peer's public key will be differen ## Test for DNS leaks -You should run a DNS leak test on [www.dnsleaktest.com](https://www.dnsleaktest.com) to ensure your WireGuard tunnel does not leak DNS requests (so all are processed by your Pi-hole). The expected outcome is that you should only see DNS servers belonging to the upstream DNS destination you selected in Pi-hole. If you configured [Pi-hole as All-Around DNS Solution](/guides/dns/unbound/), you should only see the public IP address of your WireGuard server and no other DNS server. +You should run a DNS leak test on [www.dnsleaktest.com](https://www.dnsleaktest.com) to ensure your WireGuard tunnel does not leak DNS requests (so all are processed by your Pi-hole). The expected outcome is that you should only see DNS servers belonging to the upstream DNS destination you selected in Pi-hole. If you configured [Pi-hole as All-Around DNS Solution](../../dns/unbound.md), you should only see the public IP address of your WireGuard server and no other DNS server. See also [What is a DNS leak and why should I care?](https://www.dnsleaktest.com/what-is-a-dns-leak.html) (external link). diff --git a/docs/routers/fritzbox-de.md b/docs/routers/fritzbox-de.md index 9076aa1..9ddd25d 100644 --- a/docs/routers/fritzbox-de.md +++ b/docs/routers/fritzbox-de.md @@ -134,7 +134,7 @@ eingetragen werden. ![Screenshot der Fritz!Box IPv6 Adressen Einstellungen](../images/routers/fritzbox-ipv6-2-de.png) -## Optional: Erhöhung der Priorität von DNS Anfragen +## Optional: Erhöhung der Priorität von DNS Anfragen {#optional-erhohung-der-prioritat-von-dns-anfragen} Bei ausgelasteter Internetverbindung werden DNS-Anfragen u.U. stark verzögert bearbeitet. Dies kann in der Fritz!Box durch Hinterlegen von DNS als priorisierter Echtzeitanwendung vermieden werden. Falls nicht bereits geschehen, fügen Sie hierfür zunächst "`DNS`" als neuen Answendungstyp unter @@ -188,7 +188,7 @@ zwei Zugangsprofile an (z.B. "`Standard`" und "`Unbeschränkt`"). Im Profil "`St Erweiterte Einstellungen -> Gesperrte Netzwerkanwendungen ``` -die [angelegte Netzwerkanwendung "`DNS`"](/routers/fritzbox-de/#optional-erhohung-der-prioritat-von-dns-anfragen) hinzu. +die [angelegte Netzwerkanwendung "`DNS`"](#optional-erhohung-der-prioritat-von-dns-anfragen) hinzu. Im Profil "`Unbeschränkt`" darf "`DNS`" *nicht* als gesperrt hinterlegt werden. Nun werden die Zugangsprofile unter diff --git a/docs/routers/fritzbox.md b/docs/routers/fritzbox.md index ae54caf..ee61e8c 100644 --- a/docs/routers/fritzbox.md +++ b/docs/routers/fritzbox.md @@ -175,7 +175,7 @@ If not already present, create two access profiles (e.g. "`Standard`" and "`Unre Internet/Filters/Access Profiles -> Manage and Optimize Access Profiles ``` -In the profile "`Standard`" add the network application "`DNS`" ([created above](/routers/fritzbox/#optional-increasing-the-priority-of-dns-requests)) under: +In the profile "`Standard`" add the network application "`DNS`" ([created above](#optional-increasing-the-priority-of-dns-requests)) under: ``` plain Advanced settings -> Locked network applications diff --git a/mkdocs.yml b/mkdocs.yml index 47b0fbb..6cb8de6 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -4,6 +4,9 @@ repo_url: 'https://github.com/pi-hole/pi-hole' edit_uri: '../docs/blob/master/docs/' copyright: remote_branch: gh-pages +validation: + links: + anchors: warn theme: name: 'material' custom_dir: overrides