Mentre la risposta di @kichik potrebbe funzionare, un modo più elegante per ottenere lo stesso potrebbe essere quello di utilizzare la direttiva localise-queries
e una singola istanza del server dnsmasq
.
Suppongo che abbia già configurato gli intervalli DHCP per le diverse interfacce e che abbia associato dnsmasq
a quelli.
Aggiungere l'opzione (parzialmente documentata) localise-queries
al file dnsmasq.conf
.
# /etc/dnsmasq.conf
localise-queries
Quindi, fare in modo che uno dei file che dnsmasq
legge per i padroni di casa (come /etc/hosts
) contiene voci con gli indirizzi IP per entrambe le reti, come questo:
# /etc/hosts
127.0.0.1 dev-vm
192.168.1.1 dev-vm
10.0.0.1 dev-vm
Un'alternativa modificando il file /etc/hosts
è quello di specificare gli indirizzi nel file dnsmasq.conf
invece:
# /etc/dnsmasq.conf
localise-queries
host-record=dev-vm,127.0.0.1
host-record=dev-vm,192.168.1.1
host-record=dev-vm,10.0.0.1
di conseguenza in b altri casi, dnsmasq
servirà solo l'IP che corrisponde all'IP e alla maschera di rete dell'interfaccia per le query ricevute su quella particolare interfaccia.
Secondo il man page, questo fa le seguenti:
-y, --localise-query
risposte ritorno alle query DNS da/etc/hosts che dipendono l'interfaccia su cui il la query è stata ricevuta.Se un nome in/etc/hosts ha più di un indirizzo ad esso associato, e almeno uno di questi indirizzi si trova nella stessa subnet dell'interfaccia a cui è stata inviata la query, restituisce solo gli indirizzi su quella sottorete . Ciò consente a un server di disporre di più indirizzi in/etc/hosts corrispondenti a ciascuna delle sue interfacce e gli host riceveranno l'indirizzo corretto in base alla rete a cui sono collegati. Attualmente questa funzione è limitata a IPv4.
Dove entrano in gioco le diverse interfacce? Stai usando due interfacce diverse per la rete domestica e la rete di lavoro? Perché l'IP della VM cambia? – kichik
Sì, erano 2 interfacce diverse per la casa (192.168.0. *) E funzionano (10.0.0. *). Il cambiamento è tra l'IP del lavoro e l'IP di casa. –