mirror of
https://github.com/unifi-utilities/unifios-utilities.git
synced 2025-07-26 05:14:43 +00:00
Update README.md (#651)
Fixed markdown formatting so it's easier to read in the browser.
This commit is contained in:
@ -14,6 +14,7 @@
|
||||
Note: IP and VLAN settings for you pihole network, 20-dns-conflist and 10-dns.sh MUST all match each other.
|
||||
|
||||
- Example settings for pihole network:
|
||||
```
|
||||
Network Name: Pihole
|
||||
Host address: 10.0.5.1
|
||||
Netmask: 24
|
||||
@ -22,84 +23,97 @@ Note: IP and VLAN settings for you pihole network, 20-dns-conflist and 10-dns.sh
|
||||
Multicast DNS: Enable
|
||||
DHCP: None
|
||||
Ipv6 Interface Type: None
|
||||
```
|
||||
|
||||
- YOU WILL NEED TO CHANGE [`20-dns.conflist`](../cni-plugins/20-dns.conflist)
|
||||
Change the line:
|
||||
```
|
||||
"mac": "add 3 fake hex portions, replacing x's here 00:1c:b4:xx:xx:xx",
|
||||
```
|
||||
to create a legitimate mac address that matches some vendor space(first 6 digits ). It needs to be unique on your network.
|
||||
The example gives one option. Locally administered mac addresses do not work.
|
||||
|
||||
If you are using a different IP address than the example:
|
||||
Change these lines to match your settings:
|
||||
```
|
||||
"address": "10.0.5.3/24",
|
||||
"gateway": "10.0.5.1"
|
||||
If you are using a different VLAN than the example:
|
||||
Change this line to match your VLAN number:
|
||||
```
|
||||
If you are using a different VLAN than the example, change this line to match your VLAN number:
|
||||
```
|
||||
"master": "br5",
|
||||
```
|
||||
|
||||
- You MAY need to change[`10-dns.sh`](../dns-common/on_boot.d/10-dns.sh).
|
||||
If you are using a different IP address than the example:
|
||||
Change these lines to match your settings:
|
||||
If you are using a different IP address than the example, change these lines to match your settings:
|
||||
```
|
||||
IPV4_IP="10.0.5.3"
|
||||
IPV4_GW="10.0.5.1/24"
|
||||
If you are using a different VLAN than the example:
|
||||
Change this line to match your VLAN number:
|
||||
```
|
||||
If you are using a different VLAN than the example, change this line to match your VLAN number:
|
||||
```
|
||||
VLAN=5
|
||||
If you want the pihole container to have a different name than the example:
|
||||
Change this line to match the different name:
|
||||
```
|
||||
If you want the pihole container to have a different name than the example, change this line to match the different name:
|
||||
```
|
||||
CONTAINER=pihole
|
||||
- If you want IPv6 support
|
||||
Use 20-dnsipv6.conflist and update 10-dns.sh with the IPv6 addresses.
|
||||
Also, please provide IPv6 servers to podman using --dns arguments.
|
||||
```
|
||||
- If you want IPv6 support, use `20-dnsipv6.conflist` and update `10-dns.sh` with the IPv6 addresses.
|
||||
Also, please provide IPv6 servers to podman using `--dns` arguments.
|
||||
|
||||
## Steps
|
||||
|
||||
### Configuration files and scripts
|
||||
|
||||
1.0 Copy [`05-install-cni-plugins.sh`](../cni-plugins/05-install-cni-plugins.sh) to `/data/on_boot.d`
|
||||
1.1 Execute `chmod +x /data/on_boot.d/05-install-cni-plugins.sh`
|
||||
1.2 Execute `/data/on_boot.d/05-install-cni-plugins.sh`
|
||||
1. Set up `05-install-cni-plugins.sh`
|
||||
1. Copy [`05-install-cni-plugins.sh`](../cni-plugins/05-install-cni-plugins.sh) to `/data/on_boot.d`
|
||||
2. Execute `chmod +x /data/on_boot.d/05-install-cni-plugins.sh`
|
||||
3. Execute `/data/on_boot.d/05-install-cni-plugins.sh`
|
||||
|
||||
2.0 On your controller, create a network with no DHCP server and give it a VLAN.(see example settings above).
|
||||
2.1 Copy YOUR modified [`20-dns.conflist`] to `/data/podman/cni`
|
||||
2.2 Execute `chmod +x /data/podman/cni/20-dns.conflist`
|
||||
2.3 Execute `cp /data/podman/cni/20-dns.conflist /etc/cni/net.d/dns.conflist`
|
||||
3. On your controller, create a network with no DHCP server and give it a VLAN.(see example settings above).
|
||||
1. Copy YOUR modified [`20-dns.conflist`] to `/data/podman/cni`
|
||||
2. Execute `chmod +x /data/podman/cni/20-dns.conflist`
|
||||
3. Execute `cp /data/podman/cni/20-dns.conflist /etc/cni/net.d/dns.conflist`
|
||||
|
||||
To check progress - run the command:
|
||||
```shell
|
||||
podman network inspect dns
|
||||
```
|
||||
You should see a copy of your 20-dns.conflist displayed.
|
||||
You should see a copy of your `20-dns.conflist` displayed.
|
||||
|
||||
3.0 Copy your [`10-dns.sh`] to `/data/on_boot.d`
|
||||
3.1 Execute `chmod +x /data/on_boot.d/10-dns.sh`
|
||||
3.2 Execute `/data/on_boot.d/10-dns.sh`
|
||||
3. Set up `10-dns.sh`
|
||||
1. Copy your [`10-dns.sh`] to `/data/on_boot.d`
|
||||
2. Execute `chmod +x /data/on_boot.d/10-dns.sh`
|
||||
3. Execute `/data/on_boot.d/10-dns.sh`
|
||||
|
||||
### Create directories for persistent Pi-hole configuration
|
||||
|
||||
4.0 Execute the following commands:
|
||||
|
||||
```sh
|
||||
mkdir -p /data/etc-pihole
|
||||
mkdir -p /data/pihole/etc-dnsmasq.d
|
||||
```
|
||||
|
||||
### Create the pihole container
|
||||
4. Execute the following commands:
|
||||
```sh
|
||||
mkdir -p /data/etc-pihole
|
||||
mkdir -p /data/pihole/etc-dnsmasq.d
|
||||
```
|
||||
|
||||
### Create the pihole container
|
||||
|
||||
Note:
|
||||
--name MUST match the name you set in 10-dns.sh
|
||||
-e FTLCONF_REPLY_ADDR4 MUST be in the range you set for your pihole network
|
||||
-e TZ MUST match the timezone for your controller
|
||||
* `--name` MUST match the name you set in `10-dns.sh`
|
||||
* `-e FTLCONF_REPLY_ADDR4` MUST be in the range you set for your pihole network
|
||||
* `-e TZ` MUST match the timezone for your controller
|
||||
|
||||
The example uses these upstream DNS servers The following command sets the upstream DNS servers to `1.1.1.1` ([Cloudflare DNS](https://1.1.1.1/)) and `8.8.8.8` ([Google DNS](https://developers.google.com/speed/public-dns/)).
|
||||
If you want to use different upstream DNS servers, change the following lines:
|
||||
```
|
||||
--dns=1.1.1.1 \
|
||||
--dns=8.8.8.8 \
|
||||
```
|
||||
|
||||
If you want to run a DHCP server as well you need to add the following lines:
|
||||
```
|
||||
--cap-add=NET_ADMIN
|
||||
```
|
||||
|
||||
5.0 Run the following (or your modified version) by copy / pasting the entire set.
|
||||
5. Run the following (or your modified version) by copy / pasting the entire set.
|
||||
|
||||
```sh
|
||||
podman run -d \
|
||||
@ -128,7 +142,7 @@ If you want to run a DHCP server as well you need to add the following lines:
|
||||
> ERRO[0022] unable to get systemd connection to start healthchecks: dial unix /run/systemd/private: connect: no such file or directory
|
||||
> ```
|
||||
|
||||
6.0 Set the pihole admin password
|
||||
6. Set the pihole admin password
|
||||
|
||||
```sh
|
||||
podman exec -it pihole pihole -a -p YOURNEWPASSHERE
|
||||
@ -136,8 +150,9 @@ If you want to run a DHCP server as well you need to add the following lines:
|
||||
|
||||
## Set the new DNS in your UDM
|
||||
|
||||
7.0 Update your DNS Servers to `10.0.5.3` (or your custom ip) for each of your Networks (UDM GUI | Networks | Advanced | DHCP Name Server)
|
||||
7.1 Access the pihole web interface like you would normally, e.g. http://10.0.5.3 if using the example
|
||||
7. Update DNS settings in UDM
|
||||
1. Update your DNS Servers to `10.0.5.3` (or your custom ip) for each of your Networks (UDM GUI | Networks | Advanced | DHCP Name Server)
|
||||
2. Access the pihole web interface like you would normally, e.g. http://10.0.5.3 if using the example
|
||||
|
||||
## Upgrading your PiHole container
|
||||
|
||||
@ -176,7 +191,7 @@ DNS-over-TLS provider.
|
||||
### PiHole with DoTe
|
||||
|
||||
Simply copy the `custom_pihole_dote.sh` script to `/data/scripts` and run it
|
||||
to forward all DNS traffic over TLS to Cloudflare 1.1.1.1 / 1.0.0.1. You can modify the
|
||||
to forward all DNS traffic over TLS to Cloudflare `1.1.1.1` / `1.0.0.1`. You can modify the
|
||||
script to forward to different services with ease and full configuration
|
||||
options including certificate pinning is available in the DoTe README here:
|
||||
https://github.com/chrisstaite/DoTe/
|
||||
|
Reference in New Issue
Block a user