Folosesc un Unifi UDM Pro ca gateway pentru 2 VLAN-uri:
- LAN principal (interfață:
br0
, subrețea: 192.168.1.1/24
)
- VLAN pentru dispozitive IoT (interfață:
br3
, subrețea: 192.168.3.1/24
)
Fiecare are propriul server DNS local (Adguard Home) (192.168.1.52
și 192.168.3.52
respectiv). Pentru fiecare subrețea, vreau să împiedic clienții să ocolească serverul DNS local alocat prin DHCP. Pentru a face acest lucru, fac SSH în UDM Pro și execut aceste comenzi:
iptables -t nat -A PREROUTING -i br0 ! -s 192.168.1.52 ! -d 192.168.1.52 -p tcp --dport 53 -j DNAT --la 192.168.1.52
iptables -t nat -A PREROUTING -i br0 ! -s 192.168.1.52 ! -d 192.168.1.52 -p udp --dport 53 -j DNAT --to 192.168.1.52
iptables -t nat -A PREROUTING -i br3 ! -s 192.168.3.52 ! -d 192.168.3.52 -p tcp --dport 53 -j DNAT --la 192.168.3.52
iptables -t nat -A PREROUTING -i br3 ! -s 192.168.3.52 ! -d 192.168.3.52 -p udp --dport 53 -j DNAT --to 192.168.3.52
iptables -t nat -A POSTROUTING -p tcp --dport 53 -j MASQUERADE
iptables -t nat -A POSTROUTING -p udp --dport 53 -j MASQUERADE
Le testez folosind două metode principale: săpa
și prin dispozitive WLAN (de exemplu, iPad):
Folosind săpa
metoda, testez mai întâi o interogare DNS directă și apoi una pe un server DNS Google. Rulez ambele comenzi pe gazda fizică pentru serverul meu DNS (care este membru al fiecărui VLAN prin intermediul Debian vlan
pachet):
dig linux.org „@192.168.3.52” -b „192.168.3.52”
dig linux.org „@8.8.8.8” -b „192.168.3.52”
Prima comandă de mai sus funcționează bine. Al doilea îmi oferă o pauză. Mă aștept ca al doilea să funcționeze în continuare, cu excepția faptului că va fi trimis 192.168.3.52
.
Dacă alerg la fel săpa
comenzile de mai sus, dar pe LAN-ul principal, ambele funcționează bine și pot vedea ambele interogări pe serverul meu DNS local.
Nu sunt sigur de ce VLAN 3 nu funcționează în cazul redirecționării, dar LAN-ul meu principal funcționează. Poate cineva să mă ajute să înțeleg de ce nu funcționează și să-mi arate o soluție funcțională?