View Full Version : Servizio DNS lan come fare?
Abdujaparov
23-04-2022, 18:09
Ciao,
ho un router TP-Link AX5400 Wi-Fi 6 Router e volevo capire se potesse fungere da nameserver per gli host della LAN (per andare su internet va ovviamente).
Per raggiungere il router o uso il classico ip 192.168.0.1 oppure uso il nome tplinkwifi.net.
Gli host che si connettono alla rete (vari PC più tv e smartphone) riesco a pingarli tramite ip ma non riesco a pingarli e tramite hostname, il nome non viene risolto.
Volevo capire se il problema è dovuto al fatto che non ci sia il servizio per la risoluzione dei nomi sul router (come pare di capire) o se c'è qualcosa da configurare sul router. Eventualmente come potrei fare per abilitare qualcosa di simile? Bisognerebbe installare un server dns interno alla lan?
Grazie, ciao.
bandit400
24-04-2022, 12:33
Il TP-Link AX5400 utilizza dnsmasq come servizio DHCP e DNS ed è, per sua natura, in grado di risolvere i nomi degli host ai quali lui stesso ha associato un indirizzo IP e che sono, quindi, presenti nel suo file dei leases.
Quindi, affinché dnsmasq riesca a risolvere i nomi, gli hosts devono essere prima stati associati ad un indirizzo IP dal suo server DHCP. Assicurati, quindi, di non avere indirizzi IP settati staticamente sui dispositivi e se proprio ti serve che abbiano un indirizzo IP statico, fai in modo che questo venga loro riservato dal DHCP server attraverso il loro MAC address.
Controlla in Advanced -> Network -> DHCP Server che alle voci "Primary DNS" e "Secondary DNS" non ci sia scritto nulla o, al massimo, che ci sia scritto l'indirizzo IP del router stesso. Erroneamente viene consigliato di mettere qui indirizzi di DNS pubblici. E' concettualmente sbagliato e quello che si ottiene è un malfunzionamento tipo quello da te descritto (*).
(*) Se vuoi specificare dei DNS pubblici da usare in luogo di quelli forniti dall'ISP, vai in Advanced -> Network -> Internet e clicca su "|> Advanced Settings". Quindi cerca la voce "DNS Address:" e dal menu a tendina modifica l'impostazione da "Get Dynamically from ISP" a "Use the Following DNS Addresses". A quel punto le voci "Primary DNS:" e "Secondary DNS:" sono editabili e puoi mettere i DNS pubblici che desideri.
Abdujaparov
25-04-2022, 19:09
La configurazione nel router è corretta.
C'è un modo per verificare le entry di dnsmasq?
bandit400
25-04-2022, 20:00
C'è un modo per verificare le entry di dnsmasq?
Vai in Advanced -> Network -> DHCP Server -> DHCP Client List
Se i tuoi hosts non sono riportati in questa lista, cerchiamo di capire perché.
Abdujaparov
30-04-2022, 08:47
Si la lista dei device è piena e anche i device con ip riservato è popolat a e vedo anche il device name.
es:
device name;mac;ip
pc-torino-new,98-48-27-c8-29-fa;192.168.0.196
mi sembra corretto da qui.
bandit400
30-04-2022, 08:49
Ok, bene. E nonostante questo da un host qualsiasi non riesci a risolvere il nome di qualsiasi altro host nella LAN, corretto?
Abdujaparov
30-04-2022, 15:22
già.
Abdujaparov
30-04-2022, 16:33
su una macchina linux dove ho impostato hostname e dominio riesco a pingare utilizzando l'fqdn.
Nelle pagina del router con i device connessi non c'è l'fqdn, manca il dominio.
Può essere questo il problema?
bandit400
01-05-2022, 00:00
su una macchina linux dove ho impostato hostname e dominio riesco a pingare utilizzando l'fqdn.
...
Può essere questo il problema?
Si, credo di si:
root@pi-hole ~ # ping laptop01
ping: laptop01: Nome o servizio sconosciuto
root@pi-hole ~ # ping laptop01.housedomain
PING laptop01.housedomain (192.168.4.149) 56(84) bytes of data.
64 bytes from laptop01.housedomain (192.168.4.149): icmp_seq=1 ttl=128 time=2.31 ms
64 bytes from laptop01.housedomain (192.168.4.149): icmp_seq=2 ttl=128 time=124 ms
64 bytes from laptop01.housedomain (192.168.4.149): icmp_seq=3 ttl=128 time=8.63 ms
64 bytes from laptop01.housedomain (192.168.4.149): icmp_seq=4 ttl=128 time=2.04 ms
--- laptop01.housedomain ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
rtt min/avg/max/mdev = 2.042/34.365/124.473/52.090 ms
root@pi-hole ~ # nslookup
> laptop01
Server: 192.168.4.1
Address: 192.168.4.1#53
Name: laptop01
Address: 192.168.4.149
> laptop01.housedomain
Server: 192.168.4.1
Address: 192.168.4.1#53
Name: laptop01.housedomain
Address: 192.168.4.149
> exit
root@pi-hole ~ #
Da una macchina Linux, Pi-Hole, ho cercato di pingare una macchina Windows, laptop01: se uso solo l'hostname, fallisce; se uso il nome completo, riesce. Eppure il DNS server risponde, interpellato via nslookup, risolvendo tanto il solo hostname, quanto il nome completo.
King_Of_Kings_21
01-05-2022, 11:50
Non è che sui dispositivi client hai impostato un DNS che non sia il router? Ad esempio se usi 1.1.1.1 o 8.8.8.8 bypassi il DNS sul router.
Abdujaparov
01-05-2022, 14:09
Non è che sui dispositivi client hai impostato un DNS che non sia il router? Ad esempio se usi 1.1.1.1 o 8.8.8.8 bypassi il DNS sul router.
no no, nessun dns impostato sui singoli host.
bandit400
01-05-2022, 14:53
su una macchina linux dove ho impostato hostname e dominio riesco a pingare utilizzando l'fqdn...
Sulla macchina Linux da te citata, apri la shell e digita il comando
nslookup
Poi scrivi...
server
...e vedi cosa ti restituisce. Dovrebbe essere l'IP del router TP-Link.
Esempio:
root@pi-hole ~ # nslookup
> server
Default server: 192.168.4.1
Address: 192.168.4.1#53
> exit
root@pi-hole ~ # cat /etc/resolv.conf
nameserver 192.168.4.1
search housedomain
root@pi-hole ~ #
Abdujaparov
01-05-2022, 18:32
1) nslookup --> server --> restituisce l'ip del router correttamente
2) /etc/resolv.conf --> nameserver ip del router
ip del router 192.168.0.1
Sembra tutto corretto.
bandit400
01-05-2022, 19:37
Da una macchina Linux, Pi-Hole, ho cercato di pingare una macchina Windows, laptop01: se uso solo l'hostname, fallisce; se uso il nome completo, riesce. Eppure il DNS server risponde, interpellato via nslookup, risolvendo tanto il solo hostname, quanto il nome completo.
Devo rettificare, è bastato riavviare il mio router (un Asus) ed il comportamento è mutato ed è quello che mi sarei aspettato:
root@pi-hole ~ # ping laptop01
PING laptop01.housedomain (192.168.4.149) 56(84) bytes of data.
64 bytes from laptop01.housedomain (192.168.4.149): icmp_seq=1 ttl=128 time=2.96 ms
64 bytes from laptop01.housedomain (192.168.4.149): icmp_seq=2 ttl=128 time=7.15 ms
64 bytes from laptop01.housedomain (192.168.4.149): icmp_seq=3 ttl=128 time=2.53 ms
64 bytes from laptop01.housedomain (192.168.4.149): icmp_seq=4 ttl=128 time=8.80 ms
^C
--- laptop01.housedomain ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
rtt min/avg/max/mdev = 2.526/5.358/8.796/2.684 ms
root@pi-hole ~ # ping laptop01.housedomain
PING laptop01.housedomain (192.168.4.149) 56(84) bytes of data.
64 bytes from laptop01.housedomain (192.168.4.149): icmp_seq=1 ttl=128 time=1.86 ms
64 bytes from laptop01.housedomain (192.168.4.149): icmp_seq=2 ttl=128 time=2.43 ms
64 bytes from laptop01.housedomain (192.168.4.149): icmp_seq=3 ttl=128 time=6.80 ms
64 bytes from laptop01.housedomain (192.168.4.149): icmp_seq=4 ttl=128 time=2.94 ms
^C
--- laptop01.housedomain ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
rtt min/avg/max/mdev = 1.855/3.505/6.798/1.939 ms
root@pi-hole ~ # nslookup
> laptop01
Server: 192.168.4.1
Address: 192.168.4.1#53
Name: laptop01.housedomain
Address: 192.168.4.149
> laptop01.housedomain
Server: 192.168.4.1
Address: 192.168.4.1#53
Name: laptop01.housedomain
Address: 192.168.4.149
> exit
root@pi-hole ~ #
Diciamo che sostanzialmente non credo ci sia nulla che non va, ma se questo stato di cose è un limite (come da richiesta iniziale), vediamo come mettere su un DNS server + DHCP server minimale.
Per esempio, se hai notato uso Pi-Hole come blocco delle pubblicità più aggressive. Questo funziona sia come DNS server, sia come DNS forwarder e sia come DHCP server.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.