How gubernievs/antizapret-vpn works
AntiZapret VPN is a server setup and runtime for split-tunnel AntiZapret access plus a conventional full VPN, with OpenVPN, WireGuard, and AmneziaWG client profiles. The documented flow is clients connect through a selected VPN; DNS and routing policy determine which traffic uses the tunnel, and daily list updates refresh that policy. The tree shows the installer payload, VPN and resolver configuration, and update scripts. Source excerpts cover only the fake-IP DNS proxy, so links between other runtime stages are limited to documented behavior and explicit configuration.
Main entry points: proxy.py Fake-IP DNS proxy · doall.sh Update runner · server OpenVPN server · kresd.conf Knot Resolver
Components 19
Server setup
- Installer
setup.sh - Server payload
setup
VPN access
- OpenVPN server
setup/etc/openvpn/server - WireGuard profiles
setup/etc/wireguard/templates - OpenVPN profiles
setup/etc/openvpn/client/templates - VPN service overrides
setup/etc/systemd/system - Client hooks
setup/etc/openvpn/server/scripts
DNS and routing policy
- Knot Resolver
setup/etc/knot-resolver/kresd.conf - Resolver rules
setup/etc/knot-resolver - Fake-IP DNS proxy
setup/root/antizapret/proxy.py - Policy lists
setup/root/antizapret/config - Fake-IP mappings
setup/root/antizapret/proxy.py - Firewall rules
setup/etc/sysctl.d/99-antizapret.conf
Policy updates
- Update runner
setup/root/antizapret/doall.sh - Daily timer
setup/etc/systemd/system/antizapret-update.timer - Policy downloads
setup/root/antizapret/download - Custom update hooks
setup/root/antizapret/custom-update.sh
Other components
- VPN client
- Upstream DNS
Connections 17
- Installer → Server payload: installs
- Server payload → VPN service overrides: configures
- VPN client → OpenVPN server: connects
- VPN client → WireGuard profiles: uses profile
- VPN client → OpenVPN profiles: uses profile
- OpenVPN server → Client hooks: dispatches
- VPN service overrides → OpenVPN server: configures
- Knot Resolver → Resolver rules: loads
- Knot Resolver → Fake-IP DNS proxy: uses proxy
- Fake-IP DNS proxy → Upstream DNS: forwards queries
- Fake-IP DNS proxy → Fake-IP mappings: tracks mappings
- Fake-IP DNS proxy → Firewall rules: updates iptables
- Daily timer → Update runner: starts
- Update runner → Policy downloads: refreshes lists
- Update runner → Policy lists: updates
- Update runner → Custom update hooks: runs hooks
- Policy lists → Resolver rules: feeds rules