Added Cloudflare service to DDNS
This commit is contained in:
parent
82f3058577
commit
df09e99888
4 changed files with 170 additions and 54 deletions
68
README.md
68
README.md
|
|
@ -261,23 +261,23 @@ Configure mDNS reflection with the top-level `mdns_reflection` block in `core.js
|
|||
## Initial Deployment
|
||||
|
||||
```bash
|
||||
sudo ./core.py --install # Check and install required packages
|
||||
sudo ./core.py --apply # Apply VLANs, DHCP, DNS, firewall, RADIUS, mDNS, timers
|
||||
sudo ./core.py --update-blocklists # Download and apply blocklists
|
||||
sudo python3 core.py --install # Check and install required packages
|
||||
sudo python3 core.py --apply # Apply VLANs, DHCP, DNS, firewall, RADIUS, mDNS, timers
|
||||
sudo python3 core.py --update-blocklists # Download and apply blocklists
|
||||
```
|
||||
|
||||
Optional (if DDNS is desired):
|
||||
|
||||
```bash
|
||||
sudo ./ddns.py --start # Run an immediate IP update and install the update timer
|
||||
sudo python3 ddns.py --start # Run an immediate IP update and install the update timer
|
||||
```
|
||||
|
||||
Optional (if VPN is desired):
|
||||
|
||||
```bash
|
||||
sudo ./vpn.py --add-peer # Add a VPN peer interactively
|
||||
sudo ./vpn.py --apply # Write WireGuard config and start the interface
|
||||
sudo ./core.py --apply # Run again after VPN to start dnsmasq for the VPN VLAN(s)
|
||||
sudo python3 vpn.py --add-peer # Add a VPN peer interactively
|
||||
sudo python3 vpn.py --apply # Write WireGuard config and start the interface
|
||||
sudo python3 core.py --apply # Run again after VPN to start dnsmasq for the VPN VLAN(s)
|
||||
```
|
||||
|
||||
After adding VPN peers, transfer `vpn-client-<n>.conf` to the peer device by secure means, then delete it from this server.
|
||||
|
|
@ -293,20 +293,20 @@ All scripts are designed to be run multiple times - re-running `--apply` replace
|
|||
Commands that modify system state require `sudo`. Read-only commands do not.
|
||||
|
||||
```
|
||||
sudo ./core.py --install # Check and interactively install required packages
|
||||
sudo ./core.py --apply # Apply full config: networkd, dnsmasq, nftables, RADIUS, mDNS, timer, boot service
|
||||
sudo ./core.py --apply --dry-run # Preview --apply actions without making changes
|
||||
sudo ./core.py --update-blocklists # Download and merge blocklists, then --apply
|
||||
sudo ./core.py --disable # Revert to network client (interactive wizard)
|
||||
sudo ./core.py --disable --dry-run # Preview --disable wizard without making changes
|
||||
sudo ./core.py --reset-leases # Stop dnsmasq, delete all lease files, restart (forces devices to re-acquire)
|
||||
sudo ./core.py --reset-leases VLAN # Reset leases for a specific VLAN only (e.g. trusted, iot, guest)
|
||||
sudo python3 core.py --install # Check and interactively install required packages
|
||||
sudo python3 core.py --apply # Apply full config: networkd, dnsmasq, nftables, RADIUS, mDNS, timer, boot service
|
||||
sudo python3 core.py --apply --dry-run # Preview --apply actions without making changes
|
||||
sudo python3 core.py --update-blocklists # Download and merge blocklists, then --apply
|
||||
sudo python3 core.py --disable # Revert to network client (interactive wizard)
|
||||
sudo python3 core.py --disable --dry-run # Preview --disable wizard without making changes
|
||||
sudo python3 core.py --reset-leases # Stop dnsmasq, delete all lease files, restart (forces devices to re-acquire)
|
||||
sudo python3 core.py --reset-leases VLAN # Reset leases for a specific VLAN only (e.g. trusted, iot, guest)
|
||||
|
||||
./core.py --status # Per-VLAN dnsmasq, freeradius, avahi-daemon, timer, and boot service status
|
||||
./core.py --view-configs # Active per-VLAN dnsmasq config files
|
||||
./core.py --view-leases # Active DHCP leases across all VLANs with VLAN, type, and description
|
||||
./core.py --view-rules # Active nftables ruleset
|
||||
./core.py --view-metrics # Lifetime DNS metrics across all VLAN instances
|
||||
python3 core.py --status # Per-VLAN dnsmasq, freeradius, avahi-daemon, timer, and boot service status
|
||||
python3 core.py --view-configs # Active per-VLAN dnsmasq config files
|
||||
python3 core.py --view-leases # Active DHCP leases across all VLANs with VLAN, type, and description
|
||||
python3 core.py --view-rules # Active nftables ruleset
|
||||
python3 core.py --view-metrics # Lifetime DNS metrics across all VLAN instances
|
||||
```
|
||||
|
||||
### vpn.py
|
||||
|
|
@ -314,12 +314,12 @@ sudo ./core.py --reset-leases VLAN # Reset leases for a specific VLAN only (e
|
|||
All `vpn.py` commands require `sudo`.
|
||||
|
||||
```
|
||||
sudo ./vpn.py --add-peer # Add a VPN peer interactively
|
||||
sudo ./vpn.py --manage-peers # Rename, regenerate keys, or delete a peer
|
||||
sudo ./vpn.py --apply # Write WireGuard config and start/restart the interface
|
||||
sudo ./vpn.py --disable # Stop WireGuard on all interfaces
|
||||
sudo ./vpn.py --status # WireGuard service and interface status
|
||||
sudo ./vpn.py --view-peers # Per-peer handshake times and traffic stats
|
||||
sudo python3 vpn.py --add-peer # Add a VPN peer interactively
|
||||
sudo python3 vpn.py --manage-peers # Rename, regenerate keys, or delete a peer
|
||||
sudo python3 vpn.py --apply # Write WireGuard config and start/restart the interface
|
||||
sudo python3 vpn.py --disable # Stop WireGuard on all interfaces
|
||||
sudo python3 vpn.py --status # WireGuard service and interface status
|
||||
sudo python3 vpn.py --view-peers # Per-peer handshake times and traffic stats
|
||||
```
|
||||
|
||||
### ddns.py
|
||||
|
|
@ -327,12 +327,12 @@ sudo ./vpn.py --view-peers # Per-peer handshake times and traffic sta
|
|||
Only `--start` and `--disable` require `sudo` as they install/remove systemd timer files. All other commands run as a normal user.
|
||||
|
||||
```
|
||||
sudo ./ddns.py --start # Run update and install systemd timer
|
||||
sudo ./ddns.py --disable # Stop updates and remove systemd timer
|
||||
sudo python3 ddns.py --start # Run update and install systemd timer
|
||||
sudo python3 ddns.py --disable # Stop updates and remove systemd timer
|
||||
|
||||
./ddns.py --apply # Run one immediate DDNS update (used by timer)
|
||||
./ddns.py --force # Force update regardless of cached IP
|
||||
./ddns.py --status # Timer/service status
|
||||
python3 ddns.py --apply # Run one immediate DDNS update (used by timer)
|
||||
python3 ddns.py --force # Force update regardless of cached IP
|
||||
python3 ddns.py --status # Timer/service status
|
||||
```
|
||||
|
||||
---
|
||||
|
|
@ -340,7 +340,7 @@ sudo ./ddns.py --disable # Stop updates and remove systemd timer
|
|||
## Disabling / Uninstalling Components
|
||||
|
||||
```bash
|
||||
sudo ./core.py --disable # Revert to network client (interactive wizard)
|
||||
sudo ./vpn.py --disable # Stop WireGuard on all interfaces
|
||||
sudo ./ddns.py --disable # Stop and remove DDNS timer
|
||||
sudo python3 core.py --disable # Revert to network client (interactive wizard)
|
||||
sudo python3 vpn.py --disable # Stop WireGuard on all interfaces
|
||||
sudo python3 ddns.py --disable # Stop and remove DDNS timer
|
||||
```
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue