2015-03-07 14 views
12

Esiste una chiamata broadcast di rete o qualcosa che possa forzare tutti i client DHCP connessi a rinnovare immediatamente gli indirizzi?Come forzare TUTTI i client DHCP a rinnovare?

E se no, perché no? Sicuramente questa funzionalità è stata desiderata dagli amministratori DHCP dalla data in cui è nata. Rende molto difficile cambiare un indirizzo router su una grande rete senza una pervasiva automazione client.

+2

Duplicato di http://serverfault.com/q/418898/107832 – koppor

+1

Non è un duplicato per una serie di motivi. Il principale è che sto chiedendo di forzare un rinnovo di TUTTI i clienti in una rete, e quella domanda è solo chiedendone una. E anche le risposte sono diverse. La risposta alla mia domanda è un flat out NO, per cui la risposta all'altro è "a volte". –

+0

Ho deciso di chiarire un po 'la domanda. –

risposta

9

Non è possibile senza letting the network down and up at the client network interface.

In teoria, il server DHCP può inviare un messaggio FORCERENEW a tutti i client connessi. FORCERENEW è descritto allo RFC3203. (Vedere anche https://serverfault.com/a/569869/107832)

Purtroppo, il famoso ISC DHCP Server non la supporta:

RFC 3315 stati in section 19.4.1 riconfigura i messaggi. Questo è, tuttavia, solo per IPv6. A message afferma che DOCSIS 3.0 "richiede il supporto di riconfigurazione (per DHCPv6), come specificato in RFC3315"

+0

ISC DHCP supporta DHCPv6 Riconfigura i messaggi? –

+3

Esame del codice sorgente del client in dhc6.c di ISC DHCP 4.3.1, la risposta è un YES qualificato, @ToddFreed. Nella sezione 14 di [https://tools.ietf.org/html/rfc3315], implementa un intervallo intero di 1 ..40 invece di un intervallo float di -0.1..0.1. Ma in tutti i sensi, il codice sembra supportare la riconfigurazione dei messaggi. –

+2

Ciò varrebbe la pena di espandersi, con alcuni estratti del codice sorgente qui, in una nuova risposta. Lo svaluterei e questa domanda ha ancora molte opinioni. –

4

Non è direttamente possibile - DHCP rilascia un indirizzo IP con un lease. Questo contratto indica al cliente per quanto tempo è "valido", dopodiché deve essere rinnovato. Solitamente - rinnoverà lo stesso IP, ma questo è il punto in cui avviene la negoziazione DCHP.

Forzare ogni macchina su un segmento di rete da rinnovare è un ottimo modo per creare un attacco denial of service.

Tuttavia, è possibile ridurre il tempo di lease a pochi minuti mentre si passa alla nuova topologia di rete. In pratica, ciò significa una piccola interruzione, ma lo otterresti comunque con la riacquisizione di più IP.

+1

Quindi è necessario pianificare in anticipo - a tempo almeno quanto le impostazioni del leasing. Questo è un dolore reale. Sembra che ci dovrebbe essere un modo migliore. –

+0

Eseguire manualmente il rilascio-rinnovo su ciascuna macchina. In una piccola rete è facile, e in una grande, dovresti farlo comunque come un cambiamento pianificato, quindi non importa. – Sobrique

+0

L'automazione client non è così difficile come si pensa - su qualsiasi rete di qualsiasi dimensione dovresti averli su un dominio (se Windows) e quindi su 'psexec' o avere coppie di chiavi pubbliche-private SSH configurate per Unix. – Sobrique

2

sono riuscito a rimuovere tutti i contratti di locazione con la chiusura del servizio dhcpd, l'eliminazione del file /var/lib/dhcpd/dhcpd.leases, e riavviare il demone. Quindi è necessario ottenere ciascun dispositivo per ottenere un indirizzo IP dal server DHCP. Per alcuni dispositivi funzionerà un semplice ciclo di spegnimento.