Disabilita l'adattatore di rete eth0 su Debian


10

Una volta, ho usato ifdown eth0 per scaricare una scheda di rete. Sono passati anni da quando sono riuscito a farlo funzionare, praticamente da quando sono stato su Ubuntu / Debian.

Capisco questo:

$ sudo ifdown eth0
ifdown: interface eth0 not configured

Se eseguo ifconfig, ottengo:

eth0      Link encap:Ethernet  HWaddr xx:xx:xx:xx:xx:xx  
          inet addr:192.168.20.50  Bcast:192.168.21.255  Mask:255.255.254.0
          inet6 addr: fe80::6e3b:e5ff:fe36:2ee/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1205280 errors:0 dropped:502 overruns:0 frame:0
          TX packets:34930 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:165685286 (165.6 MB)  TX bytes:5754120 (5.7 MB)
          Interrupt:20 Memory:f7f00000-f7f20000 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:9146 errors:0 dropped:0 overruns:0 frame:0
          TX packets:9146 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:734342 (734.3 KB)  TX bytes:734342 (734.3 KB)

Ho cercato su Google come fare questo e tutto ciò che posso trovare dice run ifdown eth0. Come posso interrompere la scheda di rete su scatole Debian / Ubuntu?

Risposte:


14

Sto affrontando lo stesso problema su Debian. Non conosco la causa esatta, tuttavia, funziona con sudo ifconfig eth0 downme.

Modifica: grazie a @kostix per le sue annotazioni. Non mi sono preoccupato del problema in modo molto dettagliato da quando lo uso per disattivare temporaneamente l'interfaccia. Se vuoi abbatterlo definitivamente, ifdown è la strada da percorrere. Perché questo funzioni, dovrai aggiungere la linea eth0=eth0a /run/network/ifstatee le linee auto eth0e iface eth0 inet dhcpa /etc/network/interfaces.


Questo porta semplicemente l'adattatore sul livello fisico (cioè per quanto riguarda lo stack di rete del kernel), e questo non ha nulla a che fare con il livello userland che dovrebbe gestire l'adattatore. Per favore, vedi la mia risposta - potresti essere in grado di unire gli sforzi con il PO per capire quale sottosistema gestisce la tua rete.
kostix,

OK, lo ha fatto. Non l'ho mai provato prima, perché su Redhat ifdown ha eseguito ifconfig, quindi ho assunto lo stesso per Debian. Sciocco me Grazie per questo. WTF?
Thom,

@Thom, il problema è che la prossima volta che avvierai eth0sarà molto probabilmente di nuovo attivo .
kostix,

@Thom, quanto a WTF ... ;-) Il kernel è (quasi) lo stesso in tutte le distro ma gli strumenti userland non lo sono. Bene, nme wicd sono le stesse in tutte le distro, ma le cose "tradizionali" di basso livello non lo sono.
kostix,

@kostix Va bene. Volevo solo disabilitare un po 'per i test. Poiché è un VirtualBox, è difficile scollegare il cavo di rete. :) Inoltre, capisco gli strumenti, ma i documenti di Debian dicono di usare ifdown. Ecco perché WTF?
Thom,

13

se ifconfignon è disponibile sulla tua distribuzione, significa che è sostituito dal ipcomando. In questo caso, la soluzione sarebbeip link set eth0 down


2

Non esiste una risposta definitiva in quanto potrebbero esserci diversi modi per gestire la rete in Debian. Sono a conoscenza di almeno tre:

  • L'approccio "tradizionale", utilizzando /sbin/ifup, /sbin/ifdowne /etc/init.d/networking, il tutto utilizzando il /etc/network/interfacesfile di configurazione. Questi sono forniti dal ifupdownpacchetto.

    Dato che ifdownnon sa nulla dell'adattatore, credo che sia usato un altro modo per gestire la rete.

    Sono anche a conoscenza di un pacchetto che è beleived per essere un rimpiazzo per ifupdown, netscriptma dal momento che utilizza gli stessi mezzi per gestire gli adattatori questo è presumibilmente anche non è il tuo caso.

  • Responsabile del network
  • wicd

Presumibilmente devi capire quale viene instillato e lavorare da lì. Entrambi nme di wicd solito sono configurati utilizzando gli strumenti della GUI (e di solito tramite applet a partire dal DE). nmha uno strumento da riga di comando, chiamato nm-cli. Non sono sicuro wicd.

Se hai fatto una semplice installazione e hai selezionato l'attività "Desktop", credo che (anche se non sono sicuro) hai NetworkManager installato.


1

interfaccia eth0 non configurata

significa litteraly

non configurato nel file / run / network / ifstate

I comandi ifupdown hanno un'isteresi: una volta attivata un'interfaccia con ifup, viene memorizzata nel fatto /run/network/ifstateche l'hai attivata.

ifup eth0
cat /run/network/ifstate
eth0=eth0
(+other interfaces)

ifdown eth0
cat /run/network/ifstate
(+other interfaces)

Lo stato verrà salvato anche se l'operazione non è riuscita (principalmente perché /etc/network/interfacesnon è stata scritta correttamente). La mia soluzione principale fino ad ora è quella di modificare manualmente /run/network/ifstateper agire come è eth0 e poi per rifiutarlo:

nano /run/network/ifstate
eth0=eth0

ifdown eth0

Quindi puoi ricominciare con un'impostazione pulita.

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.