Puncte:0

Configurarea unui mediu virtual pentru testarea STP

drapel ml

Caut să creez un mediu de testare pentru STP / RSTP. Am venit până la urmă acest post care sugerează utilizarea spațiilor de nume. Se părea că exact asta mi-am dorit să creez cel mai simplu mediu STP. Am ajuns să scriu un scenariu ca acesta:

#!/bin/bash
 
dacă [ "$EUID" -ne 0 ]
apoi ecou „Vă rugăm să rulați ca root”
    Ieșire
fi
 
# Primul caz: Încercați o singură pereche veth
ip netns adauga albastru
 
link ip add veth0 tip veth peer veth1 netns albastru
link ip add veth2 tip veth peer veth3 netns albastru
 
linkul ip setat veth0
ip netns exec blue ip link set veth1 up
linkul ip setat veth2
ip netns exec blue ip link set veth3 up
 
link ip adaugă punte de tip mybridge
ip link set veth0 master mybridge
set link ip veth2 master mybridge
 
ip netns exec blue ip link adăugați tip bluebridge bridge
ip netns exec blue ip link set veth1 master bluebridge
ip netns exec blue ip link set veth3 master bluebridge

ip addr add 10.200.0.1/24 dev mybridge
 
#brctl stp mybridge on
ip link set mybridge type bridge stp_state 1

linkul ip a configurat mybridge-ul

# începe înregistrarea pachetelor aici
echo „Începeți înregistrarea pachetelor. Apăsați orice tastă pentru a continua”
citiți -n 1

ip netns exec blue ip addr add 10.200.0.2/24 dev bluebridge

#ip netns exec blue brctl stp bluebridge activat
ip netns exec blue ip link set tip bluebridge bridge stp_state 1

ip netns exec blue ip link set bluebridge up

Aproape tot timpul ajung într-o stare în care atât veth0, cât și veth2 redirecționează și voi primi o furtună care face ca mașina mea să funcționeze până când dau jos oricare dintre interfețe.

Speranța mea ar fi că nucleul însuși (4.19.128 care rulează în WSL 2.0 pentru testul meu actual) ar putea detecta acestea și... să nu provoace o furtună. În plus, aș spera să pot folosi un program RSTP în spațiul utilizatorului, cum ar fi mstpd (commit f55f783610e65149) pe una sau ambele dintre aceste poduri și să cresc arhitectura rețelei, captând pachete pe oricare dintre interfețele de pe parcurs.

Este ceva ce îmi lipsește? Am încercat acest lucru și cu trei spații de nume de rețea - încă se părea aproape intotdeauna duce la o furtună.

Am văzut câteva cazuri în care un port se blochează, iar celălalt înaintează, așa cum mă așteptam. Asta pare a fi mai degrabă excepția decât regula.

Pentru cei care joacă acasă, un script simplu pentru a anula toate interfețele:

#!/bin/bash

dacă [ "$EUID" -ne 0 ]
apoi ecou „Vă rugăm să rulați ca root”
    Ieșire
fi

# Ucide albastrul
ip netns exec blue ip link del bluebridge
ip netns exec blue ip link del veth1
ip netns exec blue ip link del veth3

ip netns del blue

link ip de la mybridge

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.