Was passiert, wenn ich mein Ethernet ausschalte? Welche Schritte führt das Betriebssystem aus, wenn ich das Ethernet ausschalte?

Was passiert, wenn ich mein Ethernet ausschalte? Welche Schritte führt das Betriebssystem aus, wenn ich das Ethernet ausschalte?

Ich möchte wissen, was tatsächlich passiert, wenn ich mein Ethernet ausschalte. Was macht das Betriebssystem auf Netzwerkebene? Leert es die Routing-Tabelle oder etwas in der Art?

Antwort1

Der Linux-Kernel beschreibt jeden Ethernet-Adapter (physisches Gerät oder virtuell) durch struct net_device(Struktur net_device). Jeder struct net_devicehat eine Reihe von struct net_device_opsFunktionen, die vom Gerätetreiber implementiert werden sollten. Die wichtigsten davon:

  • ndo_open(). Wird aufgerufen, wenn Sie den Ethernet-Adapter auf EIN ( ) stellen ip link set up dev <eth_dev>.
  • ndo_start_xmit(). Wird aufgerufen, wenn Sie mit der Datenübertragung über die Schnittstelle beginnen.
  • ndo_stop(). Wird aufgerufen, wenn Sie den Ethernet-Adapter auf OFF( ) setzen ip link set down dev <eth_dev>.

Was passiert also wirklich, wenn das Gerät ausfällt?

Es gibt eine Reihe von Routinen, die in den meisten Treibern implementiert sind:

  • Stoppen Sie alle Warteschlangen, die sich auf ein bestimmtes Gerät beziehen.
  • Löschen Sie ARP-Tabelleneinträge, die sich auf ein bestimmtes Gerät beziehen.
  • Markieren Sie den Schnittstellenstatus als DOWN( ip link show dev <eth_dev>).
  • gerätespezifische Funktionen: Löschen einiger Strukturen und Puffer, Versetzen des Chips des Ethernet-Controllers in den Ruhezustand …

verwandte Informationen