diff --git a/docs/PIHOLE_GUIDE.md b/docs/PIHOLE_GUIDE.md index 4b2f703e..bb1b849c 100755 --- a/docs/PIHOLE_GUIDE.md +++ b/docs/PIHOLE_GUIDE.md @@ -1,8 +1,29 @@ # Integration with PiHole -NetAlertX comes with 2 plugins suitable for integrating with your existing PiHole instance. One plugin is using a direct SQLite DB connection, the other leverages the DHCP.leases file generated by PiHole. You can combine both approaches and also supplement it with other [plugins](/docs/PLUGINS.md). +NetAlertX comes with 3 plugins suitable for integrating with your existing PiHole instance. The first plugin uses the v6 API, the second plugin is using a direct SQLite DB connection, the other leverages the `DHCP.leases` file generated by PiHole. You can combine multiple approaches and also supplement scans with other [plugins](/docs/PLUGINS.md). -## Approach 1: `DHCPLSS` Plugin - Import devices from the PiHole DHCP leases file +## Approach 1: `PIHOLEAPI` Plugin - Import devices directly from PiHole v6 API + +![PIHOLEAPI sample settings](./img/PIHOLE_GUIDE/PIHOLEAPI_settings.png) + +To use this approach make sure the Web UI password in **Pi-hole** is set. + +| Setting | Description | Recommended value | +| :------------- | :------------- | :-------------| +| `PIHOLEAPI_URL` | Your Pi-hole base URL including port. | `http://192.168.1.82:9880/` | +| `PIHOLEAPI_RUN_SCHD` | If you run multiple device scanner plugins, align the schedules of all plugins to the same value. | `*/5 * * * *` | +| `PIHOLEAPI_PASSWORD` | The Web UI base64 encoded (en-/decoding handled by the app) admin password. | `passw0rd` | +| `PIHOLEAPI_SSL_VERIFY` | Whether to verify HTTPS certificates. Disable only for self-signed certificates. | `False` | +| `PIHOLEAPI_API_MAXCLIENTS` | Maximum number of devices to request from Pi-hole. Defaults are usually fine. | `500` | +| `PIHOLEAPI_FAKE_MAC` | Generate FAKE MAC from IP. | `False` | + +Check the [PiHole API plugin readme](https://github.com/jokob-sk/NetAlertX/tree/main/front/plugins/pihole_api_scan/) for details and troubleshooting. + +### docker-compose changes + +No changes needed + +## Approach 2: `DHCPLSS` Plugin - Import devices from the PiHole DHCP leases file ![DHCPLSS sample settings](./img/PIHOLE_GUIDE/DHCPLSS_pihole_settings.png) @@ -23,12 +44,12 @@ Check the [DHCPLSS plugin readme](https://github.com/jokob-sk/NetAlertX/tree/mai | `:/etc/pihole/dhcp.leases` | PiHole's `dhcp.leases` file. Required if you want to use PiHole `dhcp.leases` file. This has to be matched with a corresponding `DHCPLSS_paths_to_check` setting entry (the path in the container must contain `pihole`) | -## Approach 2: `PIHOLE` Plugin - Import devices directly from the PiHole database +## Approach 3: `PIHOLE` Plugin - Import devices directly from the PiHole database ![DHCPLSS sample settings](./img/PIHOLE_GUIDE/PIHOLE_settings.png) | Setting | Description | Recommended value | -| :------------- | :------------- | :-------------| +| :------------- | :------------- | :-------------| | `PIHOLE_RUN` | When the plugin should run. | `schedule` | | `PIHOLE_RUN_SCHD` | If you run multiple device scanner plugins, align the schedules of all plugins to the same value. | `*/5 * * * *` | | `PIHOLE_DB_PATH` | You need to map the value in this setting in the `docker-compose.yml` file. | `/etc/pihole/pihole-FTL.db` | diff --git a/docs/img/PIHOLE_GUIDE/PIHOLEAPI_settings.png b/docs/img/PIHOLE_GUIDE/PIHOLEAPI_settings.png new file mode 100644 index 00000000..c0988167 Binary files /dev/null and b/docs/img/PIHOLE_GUIDE/PIHOLEAPI_settings.png differ