Soluzione della community

Esegui Pi-hole e LanCache insieme su ZimaOS

A ZimaOS user wanted to add LanCache beside an existing Pi-hole deployment without changing the ZimaOS web UI or rebuilding the Pi-hole container.

In sintesi: non risolvere i conflitti di porte tra Pi-hole e LanCache inventando porte client non standard

Pi-hole richiede il DNS sulle porte TCP/UDP 53. LanCache monolithic si aspetta il traffico dei client sulle porte 80 e 443. Anche il componente opzionale lancache-dns utilizza la porta DNS 53. Se tutto viene forzato sull'IP di un unico host, i conflitti di porta sono prevedibili.

Impostazioni dell'app Pi-hole di ZimaOS con porta DNS 53 e porta web rimappata su 8800
Il container Pi-hole esistente occupa già TCP/UDP 53 per il DNS, mentre la sua interfaccia web è stata rimappata dalla porta host 80.
Impostazioni LanCache di ZimaOS con la porta 53 del container DNS mappata sulla porta host 54
In questo test il DNS di LanCache è stato rimappato dalla porta container 53 alla porta host 54. I normali client DNS non interrogheranno automaticamente la porta 54.
Impostazioni monolithic di LanCache in ZimaOS con le porte host 8081 e 8082 mappate rispettivamente su 80 e 443
Il test ha inoltre spostato le porte host di LanCache dalla 80/443. Questo evita un conflitto di associazione, ma non corrisponde alle porte standard che i client si aspettano per il traffico CDN dei giochi intercettato.

Perché mappare il DNS 53 sulla porta host 54 non risolve il normale DNS della LAN

I client e i router inviano le normali richieste DNS alla porta 53. Non rilevano automaticamente che il container DNS risiede sulla porta 54. L'attuale documentazione Docker di Pi-hole mantiene il DNS su TCP/UDP 53.

Perché LanCache utilizza ancora le porte 80 e 443

La guida LanCache monolithic pubblica le porte 80 e 443. I contenuti HTTP vengono memorizzati nella cache sulla porta 80, mentre il traffico HTTPS sulla 443 viene inoltrato senza essere memorizzato nella cache. Mappare questi servizi sulle porte 8081/8082 può consentire l'avvio del container, ma i client intercettati continuano a connettersi alle porte CDN standard.

La soluzione più pulita: un'unica autorità DNS e un IP separato per la cache

Se Pi-hole è già il DNS della LAN, lascialo sulla porta 53 e usalo come unico percorso DNS per i client. Quindi indirizza gli override dei domini di cache pertinenti verso un IP LanCache che possa gestire le porte 80/443. Una seconda scheda di rete, una VLAN/macvlan o una macchina virtuale possono fornire quell'IP separato, se la progettazione della rete lo consente.

Discussione su Discord che consiglia indirizzi IP separati per Pi-hole e LanCache
La discussione di supporto consigliava IP separati perché Pi-hole richiede il DNS 53, mentre LanCache si aspetta le porte web standard e il DNS LanCache opzionale potrebbe richiedere anch'esso la 53.

LanCache stesso osserva che le piattaforme NAS spesso utilizzano già le porte 80/443 e consiglia una macchina virtuale quando la rete dell'appliance diventa complessa. Consulta le sue FAQ su NAS e conflitti di porta.

Cosa verificare prima di modificare il DNS

  • Pi-hole rimane raggiungibile su TCP/UDP 53 tramite un IP LAN stabile.
  • LanCache dispone di un IP stabile sulle cui porte 80/443 sia effettivamente raggiungibile.
  • I client di gioco ricevono solo il server DNS previsto.
  • Gli override dei domini di cache risolvono i nomi CDN supportati sull'IP LanCache.
  • Il normale DNS non correlato continua a essere risolto tramite il resolver upstream.

La guida hardware e DNS di Pi-hole illustra la configurazione di base attuale di Pi-hole su ZimaOS, mentre la guida hardware delle macchine virtuali di ZimaOS è utile quando una macchina virtuale separata rappresenta il confine di rete più pulito.