Come posso cancellare l'indirizzo IP dell'interfaccia Ethernet senza scorrere l'interfaccia su / giù o riavviarla


78

Qual è il comando Linux per cancellare l'indirizzo IP di un'interfaccia senza disattivarla e / o riavviare i servizi di rete. Sembra strano se ifconfig è in grado di cambiare l'indirizzo IP ma non ha alcuna opzione per cancellarlo o sbaglio?


1
@Andy: penso che tu abbia frainteso la domanda. @jackhab vuole annullare l'assegnazione di un indirizzo dall'interfaccia, non impostarlo su 0.0.0.0: è proprio come viene fatto ifconfig.
Grawity il

@grawity Cheers. Annullare l'assegnazione di un indirizzo significa spegnere la scheda NIC a tutti gli effetti?
Andy,

@Andy: non necessariamente. Si potrebbe ancora guardare i pacchetti in arrivo. Inoltre, una scheda NIC può avere più indirizzi (anche se in questo caso non si applica).
Grawity il

Risposte:


134

Utilizzare ipda iproute2. (Tuttavia, è necessario specificare anche la lunghezza del prefisso.)

ip addr del 10.22.30.44/16 dev eth0

Per rimuovere tutti gli indirizzi (nel caso ne abbiate più):

ip addr flush dev eth0

Funziona, ma quando voglio un cambiamento permanente non dev, ricevo un errore che dice "eth0 is garbage" (lol). immagino di dover modificare manualmente quel file, non riesco proprio a ricordare il nome in questo momento
Housemd,

24

Semplice come ifconfig eth0 0.0.0.0. Avrebbero dovuto metterlo nel manuale.


9

Per rimuovere tutti gli indirizzi da tutte le interfacce che ho usato per il ciclo:

for i in $(ls /sys/class/net/) ; do
    /usr/sbin/ip addr flush $i &
done

1

Forse stai solo cercando di ottenere un nuovo IP dal router [abilitato DHCP]? In questo caso chiama

dhclient eth0


Ha funzionato, mentre l'assegnazione di un IP non ha in qualche modo fatto funzionare la rete. Grazie.
Rich_F
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.