So I have a pihole setup in a docker container using macvlan bridging. I am using pihole as my dhcp server as opposed to my router, and it mostly works. However, I have a strange issue. My machine not pass dns traffic unless I manually enter a known working DNS server.
Like this -
That is the only way my traffic will pass. Which is odd, because I have pihole set up to use the same exact google dns server as it's upstream -
Here is my pihole docker configuration -
# More info at https://github.com/pi-hole/docker-pi-hole/ and https://docs.pi-hole.net/
pihole:
container_name: pihole
image: pihole/pihole:latest
ports:
- "53:53/tcp"
- "53:53/udp"
- "67:67/udp"
- "80:80/tcp"
- "443:443/tcp"
environment:
TZ: 'America/New York'
WEBPASSWORD: xxxx
# Volumes store your data between container upgrades
volumes:
- '/home/hisma/docker/pihole/etc-pihole/:/etc/pihole/'
- '/home/hisma/docker/pihole/etc-dnsmasq.d/:/etc/dnsmasq.d/'
dns:
- 127.0.0.1
- 1.1.1.1
ServerIP:
- 192.168.0.11
# Recommended but not required (DHCP needs NET_ADMIN)
# https://github.com/pi-hole/docker-pi-hole#note-on-capabilities
cap_add:
- NET_ADMIN
restart: unless-stopped
networks:
vlan_net:
ipv4_address: 192.168.0.11
networks:
default:
driver: bridge
vlan_net:
driver: macvlan
driver_opts:
parent: enp2s0
ipam:
config:
- subnet: 192.168.0.0/24
Really not sure what is causing this behavior. I spent hours trying to troubleshoot it but I'm getting nowhere. I suspect it may be tied to my iptables firewall blocking the dns traffic from that address, but I am unsure where to start with that. Any help would be appreciated.

