Accesso a un dispositivo di rete tramite il suo nome host
Domanda: posso usare il server DNS integrato di Keenetic per impostare una mappatura automatica da nome host a indirizzo IP in una richiesta DHCP? Ne ho bisogno per indirizzare qualsiasi altro host sulla rete locale con il nome di rete piuttosto che con l'indirizzo IP, che può cambiare quando viene assegnato dinamicamente e non è associato a un indirizzo IP specifico. Ad esempio, specificare '\\server' nella barra degli indirizzi di Windows Explorer e vedere un elenco di cartelle condivise sul server.
Risposta: Sì, questo può essere impostato sul tuo router Keenetic. Questa configurazione non riguarda la creazione di un server WINS dedicato. Può essere fatto tramite l'interfaccia a riga di comando (CLI) del router.
È possibile consentire a Keenetic di aggiungere voci proxy DNS statiche durante l'emissione di indirizzi DHCP. Questa funzione è disabilitata per impostazione predefinita. Per abilitarla, usa il comando:
(config)> ip dhcp pool _WEBADMIN update-dnsdove _WEBADMIN è il nome predefinito del pool per l'interfaccia Home, ma il nome dell'utente potrebbe essere diverso se è stato modificato in precedenza nel sistema. Il nome esatto del pool può essere trovato nel file self-test.txt
E un comando per salvare le impostazioni:
(config)> system configuration saveIn questo caso, sarà possibile accedere agli host (o ai terminali) tramite il loro hostname predefinito (il nome host dalla richiesta DHCP).
Importante
Una volta abilitato questo comando, verrà applicato ai client appena connessi al router tramite DHCP. Si consiglia di riavviare il router dopo aver effettuato le impostazioni di cui sopra.
Su un computer Windows, esegui il comando per svuotare la cache DNS (questo deve essere fatto dal prompt dei comandi di Windows) prima di verificare l'accesso a un dispositivo client di rete tramite nome host:
ipconfig /flushdnsSuccessivamente, controlla il riconoscimento automatico dei nomi host di rete sulla LAN del router utilizzando il comando ping.
Ecco un esempio. Supponiamo di avere un PC e un laptop sulla tua rete che usano rispettivamente il nome host 'PC' e 'Notebook' (ad esempio nella tua rete, potrebbe essere un server con il nome host 'SERVER'). Attiviamo il comando menzionato sopra nel router e riavviamolo. Dal laptop, esegui il comando ping pc per eseguire il ping del computer.

Digitando \\pc nella barra degli indirizzi di Windows Explorer, vedrai un elenco di risorse di rete condivise.

Ora dal computer, esegui ping notebook.

Come possiamo vedere, la mappatura del nome host e dell'indirizzo IP viene attivata automaticamente.
Oltre ad abilitare il meccanismo di mappatura nome host e indirizzo IP in una richiesta DHCP, è possibile configurare gli host sulla rete locale in modo che venga loro assegnato automaticamente un nome di dominio specifico nelle richieste DHCP. Per i dettagli, fai riferimento alle istruzioni 'Impostazione dell'opzione DHCP 15'.
Importante
Keenetic accederà al parametro hostname. Nell'interfaccia web nella pagina Liste client, puoi impostare e modificare un altro parametro — nome. Nella CLI del router, un comando show ip dhcp bindings _WEBADMIN mostra che si tratta di due campi diversi:


Quando un host è registrato nelle Liste client, il campo hostname viene copiato su name, che in questo caso è lo stesso. Ma non appena l'utente modifica il nome host nella pagina Liste client, questa modifica viene scritta nel campo name e non ci sarà alcuna mappatura del nome del dominio e dell'indirizzo IP con questo nome. Dovrai aggiungere un altro record DNS all'host desiderato nella CLI usando il comando ip host o cambiare il parametro hostname direttamente sull'host.
Se il nome host o terminale predefinito non è impostato, puoi impostarlo in Keenetic usando il comando ip host.
Per fare ciò, è necessario eseguire le seguenti operazioni:
Registra sul router e assegna un indirizzo IP permanente all'host desiderato. Inoltre, puoi registrarti nell' interfaccia web nella pagina Liste client. Dopo la registrazione, il dispositivo client specificato riceverà permanentemente lo stesso indirizzo IP dal router.
Quindi connettiti all' interfaccia a riga di comando (CLI) del router ed esegui i seguenti comandi:
(config)>ip host <host_domain_name> <address>(config)>system configuration save
Si consiglia di specificare il nome del dominio dell'host nel formato del nome di dominio di 2° livello* nel formato localhost.localdomain (ad esempio, my.comp, test.local, host.test, pc.example).
(config)>ip host my.comp 192.168.1.33Dns::Manager: Added static record for "my.comp", address 192.168.1.33. (config)>system configuration saveCore::ConfigurationSaver: Saving configuration...
Utilizzando i comandi precedenti, abbiamo aggiunto il nome del dominio dell'host e l'indirizzo IP alla tabella DNS sul router. Nel nostro esempio, my.comp è il nome del dominio dell'host con l'indirizzo IP 192.168.1.33.
Suggerimento
* — La raccomandazione nel comando ip host di utilizzare il nome host nel formato del nome di dominio di 2° livello è correlata alla particolarità del sistema operativo Windows. Quando si accede a nomi di dominio di 1° livello, il sistema invia richieste LLMNR (Link-Local Multicast Name Resolution) o NBNS (NetBIOS Name Service) se LLMNR è disabilitato e l'host non verrà rilevato durante la verifica del ping. Pertanto, per un corretto funzionamento in Windows, si consiglia di utilizzare nomi di dominio di 2° livello nelle voci ip host.
Nella rete locale del router Keenetic, sarà ora possibile accedere all'host/terminale desiderato tramite il nome del dominio.
Eseguire il ping di un host tramite il nome del dominio in Windows:
C:\Users\User> ping -n 5 my.comp
Pinging my.host [192.168.1.33] with 32 bytes of data:
Reply from 192.168.1.33: bytes=32 time=57ms TTL=64
Reply from 192.168.1.33: bytes=32 time=5ms TTL=64
Reply from 192.168.1.33: bytes=32 time=5ms TTL=64
Reply from 192.168.1.33: bytes=32 time=83ms TTL=64
Reply from 192.168.1.33: bytes=32 time=5ms TTL=64
Ping statistics for 192.168.1.33:
Packets: Sent = 5, Received = 5, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 5ms, Maximum = 83ms, Average = 31msEseguire il ping di un host tramite il nome del dominio in Linux:
[comp@comp-lnx ~]$ ping -c 5 my.comp
PING my.host (192.168.1.33) 56(84) bytes of data.
64 bytes from 192.168.1.33 (192.168.1.33): icmp_seq=1 ttl=128 time=0.342 ms
64 bytes from 192.168.1.33 (192.168.1.33): icmp_seq=2 ttl=128 time=0.508 ms
64 bytes from 192.168.1.33 (192.168.1.33): icmp_seq=3 ttl=128 time=0.331 ms
64 bytes from 192.168.1.33 (192.168.1.33): icmp_seq=4 ttl=128 time=0.427 ms
64 bytes from 192.168.1.33 (192.168.1.33): icmp_seq=5 ttl=128 time=0.414 ms
--- my.host ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 56ms
rtt min/avg/max/mdev = 0.331/0.404/0.508/0.066 msImportante
Se i pacchetti ICMP Echo Request non raggiungono l'host nell'utilità Ping, è necessario controllare la configurazione della regola di filtro di autorizzazione del firewall lato host per il protocollo ICMP (Internet Control Message Protocol).
Questo schema funzionerà solo se l'indirizzo IP del router Keenetic è impostato come server DNS preferito degli host della rete locale.
Nei router Keenetic è possibile aggiungere fino a 64 voci utilizzando il comando ip host.
Puoi vedere tutte le voci DNS statiche del comando ip host nel file di configurazione di sistema del router startup-config.txt o usando il comando show dns-proxy (questo comando mostra molte informazioni oltre alle voci DNS statiche).