Joentje / nordvpn-proxy

Use NordVPN in your Docker stack
142 stars 54 forks source link

How to setup to work with Pi-hole #14

Closed BobWs closed 4 years ago

BobWs commented 4 years ago

Hi, Any though how to setup this container/image to work with pi-hole? I would like to serve my LAN network to go though VPN and be protected by pi-hole for ads. I'm on Synology NAS. So far I've manage to start the container and when setting up the proxy via e.g. FireFox I can surf the net via NordVPN, but I can't seem to get it to work with Pi-hole in combination with your container.

Joentje commented 4 years ago

Did you try to change the dns settings --dns=103.86.96.100 to your pi-hole instance?

I guess you already changed the dns in your router?

BobWs commented 4 years ago

Did you try to change the dns settings --dns=103.86.96.100 to your pi-hole instance?

I guess you already changed the dns in your router?

Yes DNS is set to NordVPN This is my vpn config: docker pull jeroenslot/nordvpn-proxy:latest docker run -d \ --cap-add=NET_ADMIN \ --device=/dev/net/tun \ --name vpn \ -v /volume1/docker/openvpn:/app/ovpn/config \ -v /etc/localtime:/etc/localtime:ro \ --network=pihole_network \ --ip=192.168.178.52 \ --hostname='vpn' \ --dns=103.86.96.100 \ --dns=103.86.99.100 \ -e USERNAME=user \ -e PASSWORD='pass$word' \ -e LOCAL_NETWORK=192.168.178.0/24 \ -e PROTOCOL='udp' \ -e COUNTRY='ca' \ -p 8118:8118 \ #nordvpn-proxy -p 8181:80 \ #pi-hole -p 8443:443 \ #pi-hole -p 53:53/udp \ #pi-hole -p 53:53/tcp \ #pi-hole -p 67:67/tcp \ #pi-hole --restart unless-stopped \ jeroenslot/nordvpn-proxy:latest

And this is my pi-hole config: docker pull pihole/pihole:latest docker run -d --name pihole \ -v /volume1/docker/pi-hole/etc/pihole/:/etc/pihole \ -v /volume1/docker/pi-hole/etc/dnsmasq.d:/etc/dnsmasq.d \ -v /volume1/docker/pi-hole/etc/hosts:/etc/hosts:rw \ -v /volume1/docker/pi-hole/etc/resolv.conf:/etc/resolv.conf:rw \ -v /etc/localtime:/etc/localtime:ro \ -v /etc/TZ:/etc/timezone:ro \ --env-file /volume1/documents/scripts/pihole/pihole.env \ --net=container:vpn \ --restart unless-stopped \ pihole/pihole:latest

After starting the containers, the vpn container is connected to a NordVPN server and I can browse via webGUI to my pi-hole instance. When I point my client (computer) to the docker vpn IP address I'm connected to the internet, but I have a DNS leak Screen_Shot

This my client (computer) network setup, router ip is the IP of my Synology acting as gateway: Screen_Shot 1

Screen_Shot 2

Any thoughts how to solve this?

zilexa commented 4 years ago

But isn't that exactly what you are configuring? By running VPN to connect your host to the outside world but using your PiHole DNS, you are configuring a DNS leak.. What is your end goal?

The PiHole documentation regarding VPN is about a different use case: you connect remotely via a client device via VPN to your host which runs PiHole to use the DNS of PiHole. Your host device (not NordVPN) is running VPN server.

BobWs commented 4 years ago

Thanks for sharing. I’m using the built in openvpn client of my Synology to protect my lan from ads with pi-hole and surfing through vpn. For me it is much easier to configure and get the job done. For now I’m skipping the docker vpn adventure. So thanks for the help.