GNU/Linux >> Znalost Linux >  >> Linux

10 Linuxové příklady příkazů brctl pro Ethernet Network Bridge

brctl je zkratka pro Bridge Control.

V Linuxu se tento příkaz používá k vytvoření a manipulaci s ethernetovým mostem.

To se obvykle používá, když máte na svých serverech více ethernetových sítí a chcete je zkombinovat a prezentovat to jako jednu logickou síť.

Například, pokud máte eth0 a eth1, můžete je zkombinovat a prezentovat to jen jako br0, což následně použije pro síťový provoz eth0 i eth1.

V tomto tutoriálu jsme probrali následující:

  1. Vytvořte nový ethernetový most pomocí addbr
  2. Zobrazit dostupný Ethernet Bridge pomocí show
  3. Odstranit existující ethernetový most pomocí delbr
  4. Přidat rozhraní ke stávajícímu mostu
  5. Přidat více rozhraní ke stávajícímu mostu
  6. Sledování MAC adresy mostu
  7. Nastavte dobu stárnutí pro adresu Mac na Bridge
  8. Nastavení Spanning Tree na Ethernet Bridge
  9. Zobrazení hodnot parametrů STP mostu
  10. Změna hodnot parametrů mostu

1. Vytvořte nový ethernetový most pomocí addbr

Pomocí brctl addbr můžeme vytvořit nový ethernetový most.

V následujícím příkladu jsme na tomto serveru vytvořili tři ethernetové mosty:dev, stage a prod.

brctl addbr dev

brctl addbr stage

brctl addbr prod

Upozorňujeme, že v této fázi se jedná pouze o prázdný ethernetový most, na kterém není žádná další ethernetová síť.

Vezměte prosím na vědomí, že tento brctl se trochu liší od propojení linuxových EtherChannel NIC, o kterém jsme hovořili dříve.

2. Zobrazit dostupný ethernetový most pomocí show

Pomocí brctl show můžeme zobrazit všechny dostupné ethernetové mosty na vašem serveru.

Následující příklad zobrazí všechny aktuální instance tří mostů, které jsme právě vytvořili.

# brctl show
bridge name     bridge id               STP enabled     interfaces
dev             8000.000000000000       no
prod            8000.000000000000       no
stage           8000.000000000000       no

Pokud si všimnete, že poslední sloupec „rozhraní“ na něm nic není. To znamená, že k žádnému z těchto mostů zatím není přidruženo žádné ethernetové zařízení.

K související poznámce:9 příkladů Linux ethtool pro manipulaci s ethernetovou kartou

3. Smazat existující ethernetový most pomocí delbr

Pomocí brctl delbr můžeme odstranit existující ethernetový most.

Následující příklad odstraní instanci „stage“ ethernetového mostu.

brctl delbr stage

Jak vidíte z příkazu show, už nevidíme ethernetový most „stage“.

# brctl show
bridge name     bridge id               STP enabled     interfaces
dev             8000.000000000000       no
prod            8000.000000000000       no

Vezměte prosím na vědomí, že když je most aktivní (tj. nahoře), můžete jej odstranit. Nejprve musíte most sundat a pak ho smazat.

Všimněte si také, že dřívější příkaz brctl byl nazýván jako brcfg.

4. Přidejte rozhraní ke stávajícímu mostu

Pomocí brctl addif můžeme přidat rozhraní k existujícímu ethernetovému mostu.

Následující příklad přidá ethernetovou síť eth0 k mostu „dev“, který jsme právě vytvořili.

Upozornění:Nezkoušejte to na žádném kritickém počítači, protože byste mohli ztratit síťové připojení k tomuto počítači, když se něco pokazí. Zkuste to pouze na testovací instanci, kde máte přístup ke konzole.

brctl addif dev eth0

Ve výše uvedeném:

  • To skutečně udělá z eth0 jako přístavu mostu „dev“.
  • Všechny snímky, které dorazí na eth0, budou tedy zpracovány, jako by skutečně přicházely na most.
  • Také, když jsou rámce odesílány na „dev“ bridge, použije eth0. Pokud je součástí „dev“ mostu více rozhraní, pak eth0 bude potenciálním kandidátem na odesílání odchozích rámců z mostu.

Po přidání eth0 do mostu „dev“ příkaz brctl show zobrazí následující.

# brctl show
bridge name     bridge id               STP enabled     interfaces
dev             8000.0050568954bc       no              eth0
prod            8000.000000000000       no

Jak vidíte z výše uvedeného výstupu, poslední sloupec „rozhraní“ má eth0 pro most „dev“.

Poznámka:Pokud se při přidávání eth0 do mostu „dev“ něco pokazí, spusťte z konzoly následující příkaz a smažte most dev.

# brctl delbr dev

Pamatujte také, že pokud se pokusíte přidat rozhraní zpětné smyčky do mostu, dostanete následující příkaz neplatný argument.# brctl addif dev lo
nelze přidat lo do bridge dev:Neplatný argument

Jak si dokážete představit, do mostu nemůžete přidat rozhraní, které v systému neexistuje.

# brctl addif dev eth2
interface eth2 does not exist!

5. Přidat více rozhraní do existujícího mostu

Ve výše uvedeném příkladu jsme do mostu přidali pouze jedno ethernetové zařízení (eth0).

Ale celá myšlenka použití mostu je přidat k mostu více rozhraní.

V následujícím příkladu přidáváme eth0 i eth1 k mostu „dev“.

# brctl addif dev eth0 eth1

Jak vidíte z následujícího výstupu, pro dev bridge vidíme dvě čáry. V posledním sloupci „rozhraní“ vidíme eth0 i eth1 pro „dev“ ethernetový most.

# brctl show
bridge name     bridge id               STP enabled     interfaces
dev             8000.0050568954bc       no              eth0
                                                        eth1
prod            8000.000000000000       no

Poznámka:Pokud je určité ethernetové rozhraní již součástí mostu, nemůžete jej přidat do jiného mostu.

V zásadě může být jedna síť součástí pouze jednoho mostu. Pokud ne, při pokusu o přidání do jiného mostu se zobrazí následující chybová zpráva.

# brctl addif prod eth1
device eth1 is already a member of a bridge; can't enslave it to bridge prod

6. Sledování MAC adresy mostu

Pomocí brctl showmacs můžeme vidět všechny naučené MAC adresy mostu.

V následujícím příkladu jsou od nynějška následující dvě adresy mac, které se připojily k „prod“ ethernetovému mostu. Tato data se budou neustále měnit v závislosti na aktuálním stavu toho, co je připojeno k mostu.

# brctl showmacs prod
port no mac addr                is local?       ageing timer
1       00:50:56:89:54:bc       yes                0.00
2       00:60:50:46:bc:40       no                 0.00

7. Nastavení doby stárnutí pro adresu Mac na mostu

V následujícím příkladu nastavujeme dobu stárnutí mac adresy na 120 sekund na „dev“ ethernetovém můstku.

brctl setaging dev 120

Ve výše uvedeném:

  • dev je název mostu, kde nastavujeme tuto hodnotu
  • 120 je sekund
  • Pokud tedy pro „dev“ bridge není vidět rámec do 120 sekund, pak „dev“ bridge odstraní mac adresu z databáze pro předávání.

8. Nastavte Spanning Tree na Ethernet Bridge

Pomocí brctl stp můžeme nastavit spanning tree na ethernet bridge.

Ve výchozím nastavení však spanning tree není povolen, když vytváříme most.

Spanning tree je užitečný, když máte v síti více mostů a všechny mohou spolupracovat při hledání nejkratší cesty mezi dvěma ethernety.

V následujícím příkladu zapínáme spanning tree na „dev“ ethernet bridge.

K aktivaci spanning tree můžeme použít buď on nebo yes. Oba následující příkazy tedy udělají přesně totéž.

brctl stp dev on

brctl stp dev yes

Jak vidíte z následující ukázky, hodnoty ve sloupci „STP enabled“ pro most „dev“ jsou nyní „yes“.

# brctl show
bridge name     bridge id               STP enabled     interfaces
dev             8000.000000000000       yes
prod            8000.000000000000       no

Chcete-li na svém ethernetovém mostu vypnout spanning tree, postupujte takto:

# brctl stp dev off

# brctl show
bridge name     bridge id               STP enabled     interfaces
dev             8000.000000000000       no
prod            8000.000000000000       no

9. Zobrazení hodnot parametrů STP mostu

STP je zkratka pro Spanning Tree Protocol.

Jakmile povolíte stp na mostě, můžete použít showtp, jak je uvedeno níže, k zobrazení všech hodnot parametrů stp vašeho mostu.

Následující zobrazí parametr stp a jeho aktuální hodnotu pro most „dev“.

# brctl showstp dev
dev
 bridge id              000a.000000000000
 designated root        000a.000000000000
 root port                 0       path cost                  0
 max age                  19.99    bridge max age            19.99
 hello time                1.99    bridge hello time          1.99
 forward delay            14.99    bridge forward delay      14.99
 ageing time             299.95
 hello timer               0.00    tcn timer                  0.00
 topology change timer     0.00    gc timer                   0.00
 hash elasticity           4       hash max                 512
 mc last member count      2       mc init query count        2
 mc router                 1       mc snooping                1
 mc last member timer      0.99    mc membership timer      259.96
 mc querier timer        254.96    mc query interval        124.98
 mc response interval      9.99    mc init query interval    31.24
 flags

10. Změňte hodnoty parametrů mostu

Výchozí hodnoty parametru spanning tree pro konkrétní most lze změnit. Můžete také změnit další hodnoty parametrů mostu, který jste vytvořili.

Všechny následující příkazy sady uvedené v tabulce níže začínají na brctl. Například:

brctl setageing dev 100

Následující tabulka zobrazuje dostupné příkazy sady pro brctl. Hodnota času je v sekundách.

příkaz brctl Popis
doba nastavení mostu Nastavit dobu stárnutí
setbridgeprio bridge prio Nastavte prioritu mostu (mezi 0 a 65535)
setfd bridge time Nastavit dopředné zpoždění mostu
sethello bridge time Nastavit čas ahoj
setmaxage bridge time Nastavit maximální stáří zprávy
setgcint bridge time Nastavit interval sběru odpadu v sekundách
sethashel bridge int Nastavit hašovací elasticitu
sethashmax bridge int Nastavit maximální hodnotu hash
setmclmc bridge int Nastavit počet posledních členů vícesměrového vysílání
setmcrouter bridge int Nastavit směrovač vícesměrového vysílání
setmcsnoop bridge int Nastavit multicast snooping
setmcsqc bridge int Nastavit počet dotazů při spuštění vícesměrového vysílání
setmclmi čas přemostění Nastavit interval posledního člena vícesměrového vysílání
setmcmi čas přemostění Nastavit interval členství ve vícesměrovém vysílání
setmcqpi doba přemostění Nastavit interval dotazu vícesměrového vysílání
setmcqi čas přemostění Nastavit interval dotazů vícesměrového vysílání
setmcqri přemostění Nastavit interval odpovědi na dotaz vícesměrového vysílání
setmcqri přemostění Nastavit interval dotazů při spuštění vícesměrového vysílání
setpathcost bridge port cost Nastavit cenu trasy
setportprio bridge port prio Nastavte prioritu portu (mezi 0 a 255)
setportmcrouter bridge port int Nastavit směrovač vícesměrového vysílání portů
sethashel bridge int Nastavit hodnotu hašovací elasticity

.


Linux
  1. Linux killall příkaz pro začátečníky (8 příkladů)

  2. 7 Příklady příkazů Linux df

  3. Příklady příkazů dsniff v Linuxu

  1. 12 Příklady IP příkazů pro uživatele Linuxu

  2. Linuxový příkaz dir pro začátečníky (10 příkladů)

  3. 17 Příklady příkazů hpacucli pro Linux na serverech HP

  1. Příkaz Linux rm vysvětlený pro začátečníky (8 příkladů)

  2. Linux ln Command Tutorial pro začátečníky (5 příkladů)

  3. Linux nl Command Tutorial pro začátečníky (7 příkladů)