ottokarl
Goto Top

STP und Schleifen

Hallo,

ich habe eine allgemeine Frage.

Situation:
Ich nehme ein Kabel und stecke es im Switch z.B. in Port 1 und 2 und erzeuge damit eine Schleife.

Frage:
Warum muss ich zu STP noch BPDU-Protection aktivieren, damit eine solche Schleife verhindert wird? Wieso erkennt das STP eine solche Schleife nicht?

Viele Grüße!

Content-Key: 226004

Url: https://administrator.de/contentid/226004

Printed on: April 23, 2024 at 20:04 o'clock

Member: psannz
Solution psannz Jan 07, 2014 updated at 16:42:59 (UTC)
Goto Top
Sers,

ein Auszug aus der Juniper Technical Documentation:
BPDU Protection for Spanning-Tree Instance Interfaces Overview

By default, if a Bridge Protocol Data Unit (BPDU) data frame is received on a blocked interface,
the system will disable the interface and stop forwarding frames out the interface until the interface
is explicitly cleared.

The Spanning-Tree Protocol (STP) family is designed to break possible loops in a Layer 2 bridged network.
Loop prevention avoids damaging broadcast storms that can > potentially render the network useless.
STP processes on bridges exchange BPDUs to determine the LAN topology, decide the root bridge,
stop forwarding on some ports, and so on. However, a misbehaving user application or device can interfere
with the operation of the STP protocols and cause network problems.

On the MX Series routers only, you can configure BPDU protection to ignore BPDUs received on interfaces
where none should be expected (for example, a LAN interface on a network edge with no other bridges present).
If a BPDU is received on a blocked interface, the interface is disabled and stops forwarding frames. By default,
all BPDUs are accepted and processed on all interfaces.

Sollte deine Frage klären.

Grüße,
Philip
Member: chfr77
Solution chfr77 Jan 07, 2014 updated at 16:42:54 (UTC)
Goto Top
Zitat von @ottokarl:

Hallo,

ich habe eine allgemeine Frage.

Situation:
Ich nehme ein Kabel und stecke es im Switch z.B. in Port 1 und 2 und erzeuge damit eine Schleife.

Frage:
Warum muss ich zu STP noch BPDU-Protection aktivieren, damit eine solche Schleife verhindert wird? Wieso erkennt das STP eine
solche Schleife nicht?

Spanning Tree ist zum Aufbau von Sternstrukturen die einzigartige Pfade in Deiner "Switch-Landschaft" ermöglichen. Heutzutage wird üblicherweise mindestens RSTP eingesetzt, wenn Du keine VLAN' über Trunks verwendest, sonst MSTP.

BPDU sind die Pakete die diese Protokolle verwenden, damit Switche untereinander aushandeln können welche Verbindungspfade aktiv sein sollen.

Du musst "BPDU-Protection" nicht aktivieren, das ist eine Schutzfunktion gegen "gespoofte" bzw. falsche BPDU', oder BPDU' aus Richtungen von wo eigentliche keine kommen sollten, je nach Hersteller ist das irgendwie implementiert.

STP macht übrigens erst ab 3 Bridges Sinn und es ist dringend empfehlenswert die Root-Bridge vorher durch eine niedrige STP-Priorität einzustellen (zu erzwingen).
Member: spacyfreak
Solution spacyfreak Jan 07, 2014 updated at 16:43:04 (UTC)
Goto Top
Und noch ne Erklärungsvariante...


Switches müssen prinzipbedingt immer "loopfrei/strukturiert" verkabelt werden, da ein Switch Broadcast die an einem Interface reinkommen, an allen anderen Interfaces wieder rauspustet ausser an dem wo der Broadcast reinkam. Wenn nun 2 Switches mit 2 Kabeln direkt miteinander verbunden sind, würden die Broadcasts also immer wieder im Kreis zirkulieren und die CPU / RAM der Switches geht auf 100% Auslastung und das Netzwerk steht still weil nix mehr geht. Das ist eigentlich die einfachste Methode, komplette Rechenzentren oder LAN Umgebungen lahmzulegen - Broadcaststorms. Hatte schon mehrfach das Vergnügen, und in Datacentern mit tausenden von Servern ist es fast schon Detektiv-Arbeit, herauszufinden, welches Kabel man denn ziehen muss damit der Sturm sich wieder legt.

STP benutzt BPDUs als "Testpäckchen/Frames" die die Switches an ihren Uplinks rausschicken.
Wenn der Switch ein BPDU, das er selber abgeschickt hat, wieder bekommt, weiss er dass ein Loop existiert.
Dann wird er nach bestimmten Algorithmen einen der Uplink-Ports "blocken" damit die Frames nicht im Kreis zirkulieren und die Umgebung lahmlegen können, da die Frames ja jedes mal repliziert werden und sich die Netzwerklast exponentiell erhöht bis alle Geräte völlig ausgelastet sind damit die Broadcast Frames weiterzuleiten.

BPDU Guard aktivieren an "End-Anwender Ports" dient dazu, zu verhindern dass der Anwender einen eigenen Switch an dem Port betreiben kann.
Der Switch von dem Anwender würde nämlcih auch BPDUs losschicken, und der Port würde dann runtergefahren wreden und muss manuell wieder aktiviert werden. Manche Netzwerkadmins wollen halt nicht dass "Fremd-Switches" in ihrem Netzwerk angeschlossen werden sondern die Kontrolle über die LAN Infrastruktur. Ich selber halte das für "übertrieben" die Anwender unnötig einzuschränken.
Grade wenn der Anwender mehr PCs als LAN-Dosen im Büro hat wird er als erstes nen kleinen Billig-Switch als "Portvervielfacher" benutzen wollen. Warum auch nicht?


STP dient genau dazu, Loops zu erkennen und ggfs. bestimmte Switch-Uplink-Ports zu blocken um eine potentielle Broacast-Schleife zu unterbrechen, völlig unabhängig von BPDU Protection oder BPDU Guard.
Wichtiger find ich aber Mechanismen die zusätzlich Broadcast Storms erkennen und abfangen, wie Stormcontrol / Broadcast Supresssen, spanning tree etherchannel misconfig guard und sowas, da es halt Situationen geben kann ("Zombie-Switches") wo das normale STP nicht ausreicht.

Ansonsten das wichtigste was man über STP wissen muss (in Cisco Umgebungen..)

- die Root Bridge festlegen (der schnellste, zentralste Switch im LAN sollte eine STP Priorität bekommen die niedriger ist als die der anderen Switches. Das hat zur Folge dass an diesem Switch keine Ports geblockt werden und unter Umständen die Frames "ungünstige" Pfade im LAN nehmen müssen wenn man den STP Automatismus die Aushandlung des Root Bridges überlässt.

- RSTP verwenden (Rapid STP) weil das alte STP bis zu 50 Sekunden brauchte bei ner Topologieänderung bis das LAN
wieder verfügbar ist - unzumutbar.

- in komplexen Umgebungen an den STP Parametern herumzudoktern ist meist kontraproduktiv. Das Nutzen/Schaden Verhältnis ist in Schräglage.
Member: chfr77
Solution chfr77 Jan 07, 2014 updated at 16:44:53 (UTC)
Goto Top
Zitat von @spacyfreak:
BPDU Guard aktivieren an "End-Anwender Ports" dient dazu, zu verhindern dass der Anwender einen eigenen Switch an dem
Port betreiben kann.

Der Switch von dem Anwender würde nämlcih auch BPDUs losschicken, und der Port würde dann runtergefahren wreden und
muss manuell wieder aktiviert werden. Manche Netzwerkadmins wollen halt nicht dass "Fremd-Switches" in ihrem Netzwerk
angeschlossen werden sondern die Kontrolle über die LAN Infrastruktur.

Das ist EINE Implementierung, bei anderen Herstellern kannst Du z.B. einstellen das ein Port kein Rootport werden darf, das er nur edge-port sein darf etc...

Das Ursprungsproblem bleibt aber bestehen, da er nur 2 Switche hat und anstatt von einer dynamischen Linkaggregation STP einsetzt.

Weiterhin schickt nicht jede Switch die ein Anwender anschliesst BPDU' los, bzw kann STP.
Member: spacyfreak
spacyfreak Jan 07, 2014 at 15:18:06 (UTC)
Goto Top

Weiterhin schickt nicht jede Switch die ein Anwender anschliesst BPDU' los, bzw kann STP.

Das dachte ich auch. Mittlerweile aber jeder, selbst der 10euro Switch.
Member: chfr77
chfr77 Jan 07, 2014 at 15:32:02 (UTC)
Goto Top
Zitat von @spacyfreak:

>
> Weiterhin schickt nicht jede Switch die ein Anwender anschliesst BPDU' los, bzw kann STP.

Das dachte ich auch. Mittlerweile aber jeder, selbst der 10euro Switch.

Habe gerade ein paar bei Amazon gesichtet. Mir ist keine Switch für bis 10Euro bekannt die das kann. Da muss im Datenblatt stehen, dass die die entsprechenden Standards unterstützt. Schau selber mal nach. Vielleicht erkennt Dein proprietärer BPDU-Switch, dass eine weitere Switch angeschlossen wurde und verbietet dann gewisse STP-Modi?
Member: ottokarl
ottokarl Jan 07, 2014 at 16:43:53 (UTC)
Goto Top
Jetzt habe ich es kapiert. Vielen Dank!
Member: aqui
Solution aqui Jan 08, 2014 updated at 12:06:50 (UTC)
Goto Top
Ein paar Anmerkungen zum Thema Spanning Tree gibt es noch:
Wenn du so einen Schleife wie oben steckst, dann wird das ganz normal mit Spanning Tree abgedeckt, da du BPDU Frames eines Ports an einen anderen schickst. Spanning Tree sorgt dann sofort dafür das einer der Ports in den Blocking State geht.
Da bist du also sicher.

Ganz anders sieht es aber aus wenn du an einem Port z.B. einen kleinen dieser oben zitierten 10 Euro Dummswitches hast die selber kein Spanning Tree können.
Hier ist es nun relevant ob diese Switches überhaupt Spanning Tree BPDU Frames forwarden oder nicht. Manche unterdrücken diese Frames auch. Die meisten forwarden sie aber.
Wenn du nun an so einem kleinen Switch eines diese Schleifen steckst, dann sendet der STP Switch die gleichen BPDUs and den gleichen Port zurück.
Damit kann kein STP umgehen !
Folglich hast du also ein Loop auf dem Switch und dieser Traffic schafft dir eine Wirespeed Last an dem Port der dann das Restnetzwerk flutet, da die Loop Pakete meist Broadcasts sind.
Letzteres führt dann zu einer erhöhten Last im gesamten Netzwerk so das alles nur in Zeitlupe funktioniert. Eins der klassischen Fehlersymptome hier im Forum im Bereich Netzwerke, da viele mit solchen Billigswitches auf dem Schreibtisch hantieren.
Salopp gesagt kann man also (fast) jedes Netzwerk mit so einem kleinen 6 Euro Switch killen !
Um sich auch dagegen schützen zu können muss dein Switch die sog. "Loop Protection" supporten. Ist das aktiviert achtet jeder Port auf eingehende BPDU Frames mit identischem Absender.
Werden die detektiert, geht der Port sofort in den sog. "Error Disable Mode", wird also abgeschaltet.
Hier kann dann je nach Konfiguration des Admins der "Error Disable Mode" automatisch nach Zeit x aufgehoben werden oder manuell durch den Netzwerk Admin.
Solche Netze wären dann wasserdicht gegen Spanning Tree Angriffe !! Vorausgesetzt ist das natürlich das oben zu Recht angesprochene BPDU Guard aktiviert ist um Root Bridge Injections sicher zu verhindern.
Solche sinnvoll abgesicherten Netze sind aber rare Seltenheit was oft daran liegt das Admins kleiner und mittlerer Netze diese Mechanismen gar nicht kennen....oder eben halt dieses Forum nicht kennen face-wink
Zudem kommt dazu das das Gros der Billigswitches ala NetGear, D-Link, HP & Co. um die es hier im Forum meistens geht, diese Features eben gar nicht bieten oder nur ein sehr reduziertes Subset davon um grundlegende STP Szenarien umsetzen zu können. Das ist dann der oft sehr schwachbrüstigen CPU Leistung dieser Komponenten gezollt.
Member: ottokarl
ottokarl Jan 08, 2014 at 12:08:57 (UTC)
Goto Top
Danke für den Hinweis. Loop Protection hatte ich noch nicht aktiviert. Werde mir das gleich mal im Handbuch durchlesen und aktivieren. Immer wieder hilfreich dieses Forum.
Mitglied: 108012
108012 Jan 08, 2014 at 12:38:35 (UTC)
Goto Top
@ottokarl
Für 10 € habe ich auch keine Switche gefunden die das STP beherrschen, aber ab 25 €
geht es bei denen los und das ist dann auch nicht der Beinbruch das alles zu konfigurieren,
denn auch dazu hat @aqui hier im Forum einige Anleitungen verfasst die einem den Einstieg
ungemein vereinfachen!!!

Netgear GS105E - 25 €
Netgear GS108E - 35 €
Netgear GS108Tv2 - 89 €
Netgear GS110TP - 110 €

Gruß
Dobby
Member: spacyfreak
spacyfreak Jan 08, 2014 at 13:27:07 (UTC)
Goto Top
Naja, ich hab hier nen 7€ Switch (!) von TPlink da hab ich mit meinem Kollegen gewettet dass der KEIN stp macht.

wir haben dann nen cisco switch port mit "BPDU guard" konfiguriert und als der kleine TP drangehängt wurde hat der gleich brav BPDUs geschickt und der Port ging down.
Tja....
Member: aqui
aqui Jan 08, 2014 at 13:42:25 (UTC)
Goto Top
Würdest du uns noch mitteilen WELCHES Modell von TP-Link das ist ???
In der Regel machen unmanaged Switches niemals STP, weil sie eben nicht konfigurierbar sind. STP erfordert aber einige Grundkonfigurationen. Es ist recht unwahrscheinlich das dort ein gänzlich ungemanagtes STP quasi also ein ins Silizium gebranntes STP werkelt...das wäre sehr sehr ungewöhnlich.
Bis du ganz sicher das diese BPDUs nicht von Endgeräten kommen die an den Switch angeschlossen sind oder der Switch nicht doch ein billiger Websmart Switch ist...wie gesagt das Modell wäre interessant zu wissen.
Ob er wirklich völlig eigenständig Spanning Tree BPDU Pakete schickt kannst du ganz einfach sehen indem du den Switch einmal völlig nackt an einen Laptop oder PC mit einem laufenden Wireshark anschliesst.
Wenn da wirklich BPDUs kommen hast du Recht.
Es ist aber ziemlich zweifelhaft, das es das normalerweise in dieser Preisrange definitiv NICHT gibt....nichtmal bei TP-Link.
Member: spacyfreak
spacyfreak Jan 08, 2014 updated at 14:09:06 (UTC)
Goto Top
Mein Kollega (Nezzwerk HighEnd Profi der Netzwerkprotokoll RFCs als Guten-Abend-Unterhaltung liest ) sacht - jeder Switch macht STP. Wenn er kein STP macht dann ist das ein HUB.
Ich hab leider keine Zeit alle Switches durchzuprobieren ob da so ist.
Der Switch bei mir unterm Tisch ist ein http://www.tp-link.com/ch/products/details/?model=TL-SF1008D#spec
Mitglied: 108012
108012 Jan 08, 2014 at 14:39:37 (UTC)
Goto Top
Mein Kollega (Nezzwerk HighEnd Profi der Netzwerkprotokoll RFCs als Guten-Abend-Unterhaltung liest ) sacht -
Ich denke nicht das Dein "Kollega" das so gesagt hat oder er ließt
nicht die RFCs als Einschlaflektüre! Aber jede Wette dass eine der Infos nicht stimmt!

jeder Switch macht STP.
Das halte ich für eine Unwahrheit!
Spanning Tree (STP)
Rapid Spanning Tree (RSTP)
Multi Spanning Tree (MSTP)
Per VLAN STP (PVSTP)
Sind Standards und die kann ein einfacher nicht verwalteter Switch nicht ausführen,
einzige Ausnahme wäre eine Switch Kategorie die zwischen den verwaltetem und nicht
verwaltetem Switch liegt und sich in der Regel "Smart Switch" nennt, nur auch das ist
der von Dir angegebene Switch nicht!

Wenn er kein STP macht dann ist das ein HUB.
Das ist als ob man behauptet wenn eine Auto keinen Airbag hat, ist es kein Auto.

Gruß
Dobby
Member: chfr77
chfr77 Jan 09, 2014 at 07:38:51 (UTC)
Goto Top
Zitat von @spacyfreak:

Mein Kollega (Nezzwerk HighEnd Profi der Netzwerkprotokoll RFCs als Guten-Abend-Unterhaltung liest ) sacht - jeder Switch macht
STP. Wenn er kein STP macht dann ist das ein HUB.
Ich hab leider keine Zeit alle Switches durchzuprobieren ob da so ist.
Der Switch bei mir unterm Tisch ist ein http://www.tp-link.com/ch/products/details/?model=TL-SF1008D#spec

Dort steht im Datenblatt:

Standards und Protokolle
IEEE802.3
IEEE802.3u
IEEE802.3x
CSMA/CD

Erwartet hätte ich jetzt noch:

IEEE 802.1d (STP)
vielleicht auch noch:
IEEE 802.1w (RSTP)
oder:
IEEE 802.1s (MSTP)

Vielleicht liest sich Dein HighEnd-Kumpel noch ein paar IEEE Standards nächsten Abend durch. Es würde auch reichen wenn er Datenblätter von Switches sichtet und weiß welcher Standard welche Funktionalität beschreibt. face-wink
Member: aqui
aqui Jan 10, 2014 updated at 14:30:54 (UTC)
Goto Top
Stimmt absolut aber bei Chinesen Hardware weiss man nie was da noch so alles eingebaut ist...!!! Von STP steht da in der Tat nix. Wäre auch verwunderlich wenn der STP machen würde.

@spacy...
Hast du den Switch mal spaßeshalber ganz nackig an einen Wireshark gehängt und gecheckt ob vom Switch BPDUs gesendet werden ??
Eigentlich sollte da nix kommen !

Was du an STP BPDUs siehst sind sicher die "durchgeschleiften" vom Switch an dem der angeschlossen ist !
Alles andere wäre schon sehr ungewöhnlich und auch tötlich wenn man solche Switches in Netzwerke steckt wo PVSTP (Per VLAN Spanning Tree) gemacht wird (Cisco, Brocade usw. Default) ! Da würde dann das ganze Netz kollabieren da solche Billigteile immer nur Single Span machen ...wenn sie es denn überhaupt machen. Ein NoGo...
Mitglied: 108012
108012 Jan 10, 2014 at 13:00:52 (UTC)
Goto Top
Was du an STP BPDUs siehst sind sicher die "durchgeschleiften" vom Switch an den der angeschlossen ist.
Das wird es gewesen sein!

Gruß
Dobby
Member: spacyfreak
spacyfreak Jan 10, 2014 updated at 16:58:47 (UTC)
Goto Top
Ach das Thema kocht noch rum. Ich denke ihr könntet recht haben.

Hab gestern tatsächlich den Wireshark angeschmissen da es mich interessiert hat was denn nu stimmt und sehe KEINE BPDUs.
Somit scheint der auch kein STP zu machen der kleine TP-Link Switch.

Hatte halt vor Monaten mit dem "Guru-Kollegen" ne Diskussion (aus Langeweile) genau zu dem Punkt, und da hat er halt beim Cisco Switch "BPDU Guard" angemacht und als wir den TP-Link da angeschlossen ham ging der "err dis". Damit schien klar dass der STP spricht.

Wenn ich aber direkt sniffe mit notebook am TP-Link kommt kein BPDU. Also auch so genannten "GURUs" (selbsternannten) nix glauben sondern selber guggen ist immer am besten. face-wink
Member: aqui
aqui Jan 11, 2014 updated at 16:08:03 (UTC)
Goto Top
Oha...ob die "Guru Kollegen" nun noch als solche bezeichnet werden können musst du selber entscheiden face-wink
Wohl eher nicht.... Vermutlich hat dann irgendein ein Endgerät am TP Switch mal einen BPDU gesendet was den Cisco dann veranlasst hat in Error Disable zu gehen. Das können auch mal Server mit entsprechenden NIC Treibern sein....
Wenigstens können wir dann wieder ruhig schlafen mit der Gewissheit "All works as designed !" face-smile
Member: spacyfreak
spacyfreak Jan 15, 2014 at 15:51:01 (UTC)
Goto Top
Ja leute die mit dem Brustton der Überzeugung was behaupten müssen - wenn sie auch sonst recht fit sind fachlich - denoch nicht immer recht haben.
Wenn mans "genau" wissen will muss man selber guggen. So is das. face-smile
Als "Erklärung" sacht der Guru jetzt "ehh warscheinlich reagiert der TP Link Switch auf die BPDUs vom Cisco lalalala" Gelaber..