this post was submitted on 12 Mar 2025
44 points (97.8% liked)

Selfhosted

59939 readers
378 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam.

  3. Posts here are to be centered around self-hosting. Please ensure it is clear in your post how it relates to self-hosting.

  4. Don't duplicate the full text of your blog or git here. Just post the link for folks to click.

  5. Submission headline should match the article title.

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 3 years ago
MODERATORS
 

Currently have nice long docker compose file that hosts my PiHole V6 container (along with a bunch of other containers) however, reason i ask this question is because whenever I go to pull an updated image and recreate the container I experience about 20 minutes of no DNS resolution which to my knowledge is due to the NTP clock being out of sync.

What’s the best way to host a DNS sinkhole/resolver that can mitigate this issue?

Was thinking of utilizing Proxmox & LXC but I suspect I’ll get the same experience.


~~Update: Turns out PiHole doesn’t support two instances, I got both of them on separate devices also set the 2nd DNS server in my routers WAN & LAN DNS settings which did in fact split DNS between both instances however, I lost access to my routers web-ui, my Traefik instance & reverse proxies died and I lost all internet access.~~

~~So, don’t do what I did.~~

Update 2: So everything I said in my first update let’s disregard that, turns out I had my router forcing all DNS to PiHole server 1 which caused my issues mentioned above.

Two servers appears to work!

you are viewing a single comment's thread
view the rest of the comments
[–] Jjoiq@lemmy.world 2 points 1 year ago

Debian & ubuntu sudo apt install keepalived

sudo apt install libipset13

Configuration

Find your IP

ip a

edit your config

sudo nano /etc/keepalived/keepalived.conf

First node

vrrp_instance VI_1 {

state MASTER

interface ens18

virtual_router_id 55

priority 150

advert_int 1

unicast_src_ip 192.168.30.31

unicast_peer {

192.168.30.32

}

authentication {

auth_type PASS

auth_pass C3P9K9gc

}

virtual_ipaddress {

192.168.30.100/24

}

}

Second node

vrrp_instance VI_1 {

state BACKUP

interface ens18

virtual_router_id 55

priority 100

advert_int 1

unicast_src_ip 192.168.30.32

unicast_peer {

192.168.30.31

}

authentication {

auth_type PASS

auth_pass C3P9K9gc

}

virtual_ipaddress {

192.168.30.100/24

}

}

Start and enable the service

sudo systemctl enable --now keepalived.service

stopping the service

sudo systemctl stop keepalived.service

get the status

sudo systemctl status keepalived.service

Make sure to change ip and auth pass.

Enjoy