www.SAMURAJ-cz.com 

15.12.2017 Radana a Radan Translate to English by Google     VÍTEJTE V MÉM SVĚTĚ

Články

Cisco IOS 3 - nastavení interface/portu - access, trunk, port security

Upraveno 18.05.2009 18:17 | vytvořeno 09.04.2007 11:09 | Samuraj - Petr Bouška |
V pokračování popisu operačního systému Cisco Switchů se věnuji asi nejpoužívanější oblasti, nastavování parametrů pro porty a interfacy. Od základních vlastností, přes používání VLAN, nastavení IP adresy až po zabezpečení portu pomocí Port security. Popis je pouze stručný a v závěru se nachází praktické příklady.

Značení portů

Rozhranní na switchi - interfaces, jsou hlavně fyzické porty a VLANy (přesněji virtuální interface pro VLANu - Switch Virtual Interface - SVI). Vedle toho však existuje celá řada dalších, např. EtherChannel (port-channel), sériová linka (serial), konzole (console), asynchronní linka (TTY), síťový terminál (VTY) - telnet.

Fyzické porty switche se označují (adresují) typem, dnes hlavně FastEthernet (stačí f), GigabitEthernet (stačí g) a TenGigabitEthernet (stačí t), a číslem portu. Číslo portu je řetězec, který má tvar podle typu switche. Nejčastější je {slot}/{port} nebo {stack}/{slot}/{port}. Běžné (nemodulární) switche jsou brány, jako by byli ve slotu 0, takže příklad adresace (třeba pro switch C2690) je f0/1 a je jím označen FastEthernet (100Mbit/s) port číslo 1. Stohovatelné switche (podporují stack), jako je třeba Catalyst 3750, adresujeme například g1/0/1, což označuje GigabitEthernet (1Gbit/s) port, který je na prvním switchi ve stacku (nebo samostatném), ve slotu 0, port číslo 1.

Konfigurace portů

Výběr portu

Když chceme konfigurovat nějaký interface/port, tak se z privilegovaného módu přepneme do konfigurace daného portu. Pro zjednodušení můžeme konfigurovat i více portů naráz, tehdy se využívá, v IOSu běžná notace, pomlčka pro určení rozsahu (pouze v rámci stacku/slotu, za pomlčku zadáváme číslo) a čárka pro vyjmenování portů (za čárku zadáváme celé označení portu).

SWITCH(config)#interface f0/5               // přepneme se na kofiguraci portu 5
SWITCH(config)#interface range f0/1-5,g0/1  // vybereme porty 1 až 5 (fast) a 1 (gigabit)
SWITCH(config-if)#                          // interface configuration mode

Stav portu, vypínání

Interface může být v několika stavech, navíc se můžeme dívat na stav portu globálně (tehdy se používají hlavní označení stavů disabled, notconnect, connected) nebo se díváme zvlášť na fyzický/administrační stav (administrative status) a operační stav (operational/line status) portu (tehdy se používá hlavně up, down). Interně se udržuje stav portu odděleně a pouze pro některé výstupy se převádí (například show interfaces status). Administrační stav je ten, který můžeme řídit příkazy (pomocí shutdown), operační stav se nastavuje automaticky podle stavu linky. Pokud však nastavíme administrační stav na down, tak se i operační stav přepne na down. Existují i různé speciální stavy jako chyby nebo testování. Určitý pohled na nejběžnější stavy je:

  • vypnutý - disabled (down, down) - nejde přes něj žádná komunikace
  • vypnutý chybou - error-disabled (down, down) - nejde přes něj žádná komunikace, informuje o chybě
  • zapnutý nespojený - notconnect (up, down) - fyzicky nepřipojený, po zapojení komunikuje
  • zapnutý spojený - connected (up, up) - funkční a komunikující

Pro přepínání stavu mezi vypnutým a zapnutým slouží příkazy

SWITCH(config-if)#shutdown    // vypnutí portu
SWITCH(config-if)#no shutdown // zapnutí portu

Pokud je port v error-disabled stavu, kam se může dostat například díky chybě v spanning tree nebo port security, je třeba jej nejprve vypnout a pak teprve zapnout. Uvádí se, že ve výchozím stavu jsou interface vypnuté (shutdown), ale není to pravda úplně vždy. Doporučuji nepoužívané porty vypínat (nejlépe globálně při úvodní konfiguraci) a při konfiguraci portu jej vždy zapnout.

Základní vlastnosti portu

Pro port můžeme nastavovat obecné vlastnosti jako je duplex, rychlost, popis, MDIX a další. Defaultní nastavení pro duplex, speed a mdix je auto, což je v dnes ve většině případů vyhovující. Vkládání popisu k jednotlivým portům je určitě dobrý zvyk a je dobré jej vždy používat.

SWITCH(config-if)#duplex full 
SWITCH(config-if)#speed 100 
SWITCH(config-if)#description 3.14
SWITCH(config-if)#mdix auto

Nastavení defaultních hodnot pro interface

Zresetování nastavení portu do výchozích (továrních) hodnot můžeme provést jedním příkazem.

SWITCH(config)#default interface f0/1 

Zobrazení informací o interfacech

O interfacech můžeme zjistit velkou řadu informací. Některé příkazy, které můžeme použít, jsou následující.

SWITCH#show interfaces
SWITCH#show interfaces status
SWITCH#show interfaces summary
SWITCH#show interfaces switchport

Typy interfaců

Hlavní interfacy na switchi jsou:

  • fyzické porty – switch porty a routed porty
  • VLANy - Switch Virtual Interface
  • port channel – EtherChannel interface

Switch Port

Switch Port je Layer 2 (2. vrstva OSI modelu) interface asociovaný s fyzickým portem. Porty switche jsou defaultně switch porty a jsou zařazeny do jedné nebo více VLAN. Parametry, které se týkají charakteristik přepínání, se konfigurují příkazem switchport v konfiguračním módu interfacu. Switch port může pracovat v jednom z následujících módů:

  • access - typicky pro koncové zařízení (PC, server, tiskárna), přijímá netagované pakety (bez určení VLANy) a zařazuje je té VLANy, kterou má nastavenu
  • trunk - jiný switch či aktivní prvek, komunikace je tagována a přenáší se vybrané VLANy
  • dynamic - vyjednává o stavu portu (access nebo trunk) pomocí protokolu DTP
  • tunnel - využívá IEEE 802.1q tunneling pro přenos informace o VLANě přes síť ISP

Nastavení portu do příslušného módu se provádí následujícím říkazem.

SWITCH(config-if)#switchport mode access
SWITCH(config-if)#switchport mode trunk
SWITCH(config-if)#switchport mode dynamic
SWITCH(config-if)#switchport mode dot1q-tunnel

Pokud máme routovaný port, tak je můžeme převést na switch port pomocí příkazu:

SWITCH(config-if)#switchport 

Access mode

Toto je defaultní mód switch portu. Pokud je port v přístupovém módu, měli bychom jej zařadit do správné VLANy. Může být členem pouze jedné VLANy, ve výchozím stavu jsou všechny porty ve VLAN 1.

SWITCH(config-if)#switchport access vlan 100

Mimo manuálního zařazení portu do VLANy můžeme také využít protokol IEEE 802.1x (spolu s RADIUS serverem) nebo dynamické zařazení pomocí VLAN Membership Policy Server (VMPS).

Pokud na access port dorazí tagovaný paket (s označenou VLANou pomocí ISL nebo 802.1q), tak je zahozen.

Standardní hodnota MTU (Maximum Transmission Unit) pro Ethernet je 1518 B, (1500B velikost paketu + 18B hlavička a zakončení rámce). Když se použije IEEE 802.1q, tak může přijít rámec o 4B větší, tedy 1522B, když se použije ISL, tak o 30B větší, což je 1548B. Pokud port není nastaven jako trunk a přijde takto velký rámec, tak se zahodí a hlásí se jako Giant (Jumbo frame). V počítadlech pro interface se giant pakety zobrazují.

SWITCH#show system mtu
SWITCH(config-if)#system mtu jumbo 9000

Trunk mode

Trunk mode slouží primárně k tomu, abychom více switchů propojili mezi sebou a komunikace zůstala ve správné VLANě. Dnes se také často používá pro připojení některých serverů, které potřebují komunikovat do více VLAN. Pokud bychom switche propojili access portem, tak by se přenášela pouze komunikace ve VLANě, ve které by byl nastaven daný port a na druhém switchi by byl paket ve VLANě tohoto portu.

Pokud je port v trunk módu, je bodů pro konfiguraci více. U vyšších modelů switchů (obecně L3 switchů a výše) volíme metodu, kterou se k paketům dopňuje informace o zařazení do VLANy. K dispozici máme

  • IEEE 802.1q - standardizovaná metoda, kterou podporují všechny switche. Funguje na principu tzv. tagování, do hlavičky paketu přidá 4B informaci (2B - 0x8100 = je to 802.1q/802.1p, 2B - priorita + číslo VLANy) a přepočítá CRC. Používá se také pro QoS.
  • Cisco ISL - Cisco proprietární metoda, kterou podporují pouze vyšší řady switchů. Vezme celý původní paket a zabalí jej (encapsulate) jako obsah nového paketu. Přidává tedy 30B k obsahu.
SWITCH(config-if)#switchport trunk encapsulation dot1q

Následně můžeme určit, které VLANy chceme, aby se přenášeli v daném trunku. Defaultně se přenáší všechny, ale kvůli bezpečnosti a provozu můžeme chtít některé VLANy omezit. Zadáním čísla VLANy (nebo čísel oddělených čárkou či rozsah s pomlčkou) provedeme nastavení a předchozí hodnoty se smažou. Můžeme využít také pomocná klíčová slova pro modifikaci seznamu add, remove, all, none, except.

SWITCH(config-if)#switchport trunk allowed vlan 100,200
SWITCH(config-if)#switchport trunk allowed vlan add 300

Souvisejícím údajem je nastavení nativní VLANy, ta slouží k přenosu paketů, které nebyly zařazeny do žádné VLANy. Jinak řečeno, pokud do portu, který je nakonfigurován jako trunk, připojíme normální stanici (která nepodporuje trunk), tak bude komunikovat v této VLANě. Ve výchozím nastavení je to VLAN 1. Důležité je, aby na obou stranách trunku byla nastavena stejná nativní VLANa.

SWITCH(config-if)#switchport trunk native vlan 1

Více informací o konfiguraci VLAN se nachází v článku Cisco IOS 7 - konfigurace VLAN, VTP.

dot1q-tunnel mode

IEEE 802.1q tunneling umožňuje přenášet rámce, které jsou tagovány našimi čísly VLAN, přes síť service providera. Provádí se dvojité tagování, kdy se pakety, které přichází na tunnel port a jsou již otegovány naší VLANou, doplní o druhý tag s číslem VLANy, kterou se přenáší v rámci sítě service providera.

Routed Port

Routed Port je fyzický port, který funguje jako Layer 3 (3. vrstva OSI) interface, stejně jako na routeru, a komunikace probíhá pomocí routování. Routovaný port není zařazen do žádné VLANy a můžeme mu přiřadit L3 adresu (tedy IP adresu). Také nepodporuje žádné L2 protokoly, jako je DTP a STP. Routované porty jsou podporovány pouze na L3 switchích (ty podporují routování).

SWITCH(config-if)#no switchport
SWITCH(config-if)#ip address 192.168.100.2 255.255.255.0

Port security

Port security je jednoduchá a zajímavá metoda zabezpečení přístupu do sítě. Na portu, kde je nastavena, kontroluje, zda pakety přichází z povolené MAC adresy. Pokud tedy uživatel připojí do zásuvky jiné zařízení, nebude moci komunikovat.

Pro nastavení Port security musí být port ve statickém módu (trunk, access, ale ne dynamic). Zapnutí port security pro daný port:

SWITCH(config-if)#switchport port-security 

Můžeme nastavit kolik MAC adres pro port (nebo určitou VLANu) je povoleno (například pokud je do portu připojen switch). Defualtní hodnota je 1.

SWITCH(config-if)#switchport port-security maximum 1 

Pokud nezadáme žádné povolené MAC adresy, tak se používají adresy dynamicky (dočasně se ukládají pro aktuální komunikaci až do maxima). Nebo můžeme MAC adresy zadat ručně jako statické adresy. U dynamických adres můžeme nastavit, aby se tyto adresy ukládaly do běžící konfigurace (vytvoří se statický záznam, ale pokud neuložíme konfiguraci, tak se po restartu smažou).

SWITCH(config-if)#switchport port-security mac-address 0018.deda.2990            // pevná adresa
SWITCH(config-if)#switchport port-security mac-address 0000.02000.0004 vlan 3    // adresa na trunku ve VLAN 3
SWITCH(config-if)#switchport port-security mac-address sticky                    // ukládat dynamické adresy
SWITCH(config-if)#switchport port-security mac-address 001e.138c.7430 vlan voice // adresa ve Voice VLAN

Dále volíme, co se děje při porušení pravidel, tedy pokud přijde komunikace z MAC adresy, která není povolena (a dosáhlo se maxima). Default je shutdown. Možnosti jsou:

  • protect - nepovolená komunikace je zahazována, povolené MAC adresy stále komunikují
  • restrict - pošle informativní SNMP trap
  • shutdown - port se zablokuje, přepne do stavu Error-disabled (připomínám, že pro opětovné zapnutí je třeba jej nejprve vypnout)
SWITCH(config-if)#switchport port-security violation shutdown 

Pozn.: K porušení pravidel dojde také v případě, kdy je MAC adresa zadaná pro určitý port a tato adresa se objeví na jiném portu tohoto switche.

Pokud se port přepne do Error-disabled stavu, tak je třeba zásah administrátora, aby jej opět zapnul. Je však možno nastavit i automatické znovuzapnutí portu po určité době:

SWITCH(config)# errdisable recovery cause psecure-violation 
SWITCH(config)# errdisable recovery interval 60               // čas v sekundách, 60 - 86400

Pokud chceme, aby se MAC adresy pro port po určité době automaticky smazaly, můžeme použít klíčové slovo aging v řadě variant. Například pokud chceme, aby dynamické adresy měly platnost 10 minut:

SWITCH(config-if)#switchport port-security aging time 10 

Ve výchozím stavu po zapnutí Port security, je povolena jedna MAC adresa, která se používá dynamicky, tedy první zařízení, které začne komunikovat. Pokud se pokusí komunikovat další zařízení, dojde k zablokování portu.

Hlavní příkazy pro zobrazení informací o Port security jsou

SWITCH#show port-security                 // info pro všechny interface
SWITCH#show port-security address         // tabulka MAC adres a související info
SWITCH#show port-security interface f0/1  // detailní info pro určitý interface

Protected port

Mezi porty, které jsou nastaveny jako Protected, se neposílá žádná komunikace na Layer 2 (broadcast, multicast, unicast), pouze komunikace na Layer 3 (tedy s IP adresou a pomocí routování).

SWITCH(config-if)#switchport protected 

Více informací o Protected Port se nachází v článku Cisco IOS 19 - Private VLAN a Protected Port.

Spanning Tree Protocol

Protokol STP - Spanning Tree Protocol slouží k zabránění vzniku smyček v síti, například u redundantní topologie nebo při chybném propojení switchů. Jedná se o standardizovaný protokol IEEE 802.1d, ke kterému existuje řada vylepšených verzí. Funguje na principu nalezení nejkratší cesty v ohodnoceném grafu a nepotřebné porty zablokuje. Základní verze STP běží na switchi defaultně a není potřeba žádná konfigurace.

Pokud je k danému portu switche připojeno zařízení jako server či pracovní stanice a tudíž na tomto portu nemůže vzniknout smyčka, tak můžeme tento port nastavit do módu portfast, který zabrání úvodnímu blokování portu a port se výrazně rychleji zapne.

SWITCH(config-if)#spanning-tree portfast 

Více informací o STP se nachází v článku Cisco IOS 9 - Spanning Tree Protocol.

Nastavení IP adresy a brány

Některým interfacům můžeme nastavit IP adresu, hlavně se jedná o VLANy (SVI). Tato adresa slouží primárně ke komunikaci se switchem, ale také pro další služby, jako je routování nebo DHCP server. Zjednodušeně můžeme říct, že nastavujeme adresu switchi. Pokud nepoužíváme VLANy, tak ji musíme nastavit na VLANu 1. V opačném případě je vhodné mít speciální VLANu pro správu a zde nastavit IP adresu.

Adresu můžeme nastavit napevno nebo ji nechat přiřazovat DHCP serverem. Pokud nastavujeme adresu napevno, musíme ji zadat spolu s maskou sítě, v které je tato adresa platná (to je z důvodu dalších služeb).

SWITCH(config)#interface vlan 1
SWITCH(config-if)#ip address 192.168.190.2 255.255.255.0

V některých případech potřebujeme nastavit adresu brány (gateway address). Pokud budeme se switchem komunikovat pouze z lokálního subnetu, tak to není třeba. V opačném případě musíme adresu nastavit, aby switch věděl kam posílat odpovědi. Brána se nastavuje pro celý switch.

SWITCH(config)#ip default-gateway 192.168.190.1 

UniDirectional Link Detection - UDLD

Jedná se o L2 protokol, který umožňuje fyzickou konfiguraci/propojení primárně optického kabelu (fiber-optic), ale i kroucené dvojlinky (twisted-pair). Monitoruje, zda nevzniklo pouze jednosměrné (unidirectional) spojení (Tx a Rx). Tedy u optiky, zda není přerušen jeden z dvojice kabelů a také, že jsou páry správně zapojeny na obou stranách. U metalického kabelu kontroluje, že není přerušeno jedno vlákno. Pokud detekuje jednosměrné spojení, tak se port přepne do error-disabled stavu. Stejnou konfiguraci je třeba provést na obou stranách.

Pro všechny optické porty můžeme zapnout globálně.

SWITCH(config)#udld enable

Nebo můžeme zapnout pro vybrané interfacy, to funguje i pro metaliku

SWITCH (config-if)#udld enable 

Zobrazení informací o UDLD a reset vypnutých interfaců provedeme následovně.

SWITCH #show udld 
SWITCH #udld reset     // resetuje interfacy, které  byly vypnuty pomocí UDLD

Na závěr - ukládání konfigurace

Důležité upozornění. Na závěr konfigurace je třeba provedené změny uložit do startup konfigurace, abychom o ně při restartu nepřišli.

SWITCH#copy running-config startup-config 	// uložit
Destination filename [startup-config]?       // dotaz na jméno, stiskněte ENTER
Building configuration...
[OK]

Nebo můžeme použít kratší příkaz.

SWITCH#write
Building configuration...
[OK] 

Příklady nastavení

Nastavení portu pro uživatele

SWITCH>enable                                // přepnutí do privilegovaného módu
SWITCH#configure terminal                    // přepnutí do konfigurace
SWITCH(config)#interface f0/1                // konfigurace daného portu switche
SWITCH(config-if)#shutdown                   // doporučeno nejprve vypnout port, měl již být vypnutý
SWITCH(config-if)#switchport mode access     // port do přístupového módu
SWITCH(config-if)#switchport access vlan 100 // zařadit do patřičné VLANy
SWITCH(config-if)#description 3.14           // popis portu
SWITCH(config-if)#spanning-tree portfast     // do zásuvky je zapojen počítač, rychlý náběh
SWITCH(config-if)#no shutdown                // zapnutí portu
SWITCH(config-if)#exit                       // o úroveň zpět
SWITCH(config)#exit                          // o úroveň zpět
SWITCH#copy running-config startup-config    // uložit
Destination filename [startup-config]?       // dotaz na jméno, stiskněte ENTER
Building configuration...
[OK]

Nastavení portu pro propojení mezi switchi - trunk

SWITCH>enable                              // přepnutí do privilegovaného módu
SWITCH#configure terminal                  // přepnutí do konfigurace
SWITCH(config)#interface g1/0/25           // konfigurace daného portu switche
SWITCH(config-if)#shutdown                 // doporučeno nejprve vypnout port, měl již být vypnutý
SWITCH(config-if)#switchport trunk encapsulation dot1q   // nastavení metody doplňování informací o VLAN, norma 802.1q, nastavuje se pouze na vyšších modelech switchů 
SWITCH(config-if)#switchport trunk allowed vlan 2-200    // které VLANy se přenáší
SWITCH(config-if)#switchport trunk native vlan 1         // rámce bez VLANy se přenáší přes trunk v Native VLAN
SWITCH(config-if)#switchport mode trunk    // port do TRUNK módu
SWITCH(config-if)#switchport nonegotiate   // nevyjednává se trunk protokolem DTP 
SWITCH(config-if)#description 3.14         // popis portu
SWITCH(config-if)#no shutdown              // zapnutí portu
SWITCH(config-if)#end                      // skočí rovnou do privilegovaného módu
SWITCH#write                               // uložení konfigurace

Stejnou konfiguraci je třeba provést na druhé straně, tedy na druhém switchi a portu, kterým jsou propojeny.

Nastavení Port Security

SWITCH>enable                                            // přepnutí do privilegovaného módu
SWITCH#configure terminal                                // přepnutí do konfigurace
SWITCH(config)#interface f0/5                            // konfigurace daného portu switche
SWITCH(config-if)#switchport port-security               // zapneme port security
SWITCH(config-if)#switchport port-security maximum 1     // počet MAC adres, 1 je default
SWITCH(config-if)#switchport port-security violation shutdown // při porušení zablokovat port, default
SWITCH(config-if)#switchport port-security mac-address sticky // napevno uložit dynamickou MAC adresu
SWITCH(config-if)#^Z                                     // CTRL+Z skočí rovnou do privilegovaného módu
SWITCH#write                                             // uložení konfigurace
zobrazeno: 109008krát | Komentáře [8]

Autor:

Související články:

Cisco IOS

Velký seriál o operačním systému aktivních prvků firmy Cisco.

Pokud se Vám článek líbil, tak mne potěšíte, když uložíte odkaz na některý server:

Pokud se chcete vyjádřit k tomuto článku, využijte komentáře níže. Pokud chcete poradit s nějakým problémem či diskutovat na nějaké téma, tak použijte fórum.

Komentáře

  1. [1] Slavko

    ;-)

    Čtvrtek, 24.05.2007 18:10 | odpovědět
  2. [2] cm3l1k1

    zruseni nastaveni portu lze provest i prikazem:

    conf t

    default interface ...

    Úterý, 31.07.2007 15:57 | odpovědět
  3. [3] Samuraj

    odpověď na [2]cm3l1k1: Díky za doplnění. Tento příkaz jsem neznal.

    Čtvrtek, 02.08.2007 15:25 | odpovědět
  4. [4] synnasek

    perfektní , díky moc

    Pondělí, 23.03.2009 10:53 | odpovědět
  5. [5] sjp

    >>SWITCH(config)#interface range f0/1-5,g0/1

    na ios Version 12.1(14)EA1a

    chce při zadání rozsahu "range" mezeru před i za pomlčkou

    ....range f0/1 - 5,g0/1

    pepa

    Pátek, 11.09.2009 11:10 | odpovědět
  6. [6] Ferda

    U Port Security - Pri pripojeni zarizeni na jiny port, nenastane error u PS portu.

    Čtvrtek, 14.07.2011 15:34 | odpovědět
  7. [7] Samuraj

    odpověď na [6]Ferda: Nevím, jak to myslíte. Ale pokud mám na dvou portech zapnuté PS a na jednom je naučená MAC adresa zařízení, tak když toto zařízení připojím k tomu druhému portu, tak se tento vypne (pokud je nastaveno shutdown).

    Čtvrtek, 14.07.2011 17:07 | odpovědět
  8. [8] D4rkys

    Já mám zase problém v tom, že pokud na dvou portech na jiných swtichích ve stejné vlaně nastavím stejnou portsecuritu, tak ve chvíli, když to je pouze na jednom swtichi tak ok, ale jakmile to nastavím i na tomdruhém, přestane mi jít konektivita na tom druhém switchi v rámci stejné vlany... Nedává to smysl, protože je připojená mac adresa, která je povolená tou port securitou... :-(

    Cílová verze by měla být taková, že potřebuji nastavit ve 2 zasedačkách securitu pro nbtky a nejde to...

    Čtvrtek, 16.10.2014 10:02 | odpovědět
Přidat komentář

Vložit tag: strong em link

Vložit smajlík: :-) ;-) :-( :-O


Ochrana proti SPAMu, zdejte následující čtyři znaky image code

Nápověda:
  • maximální délka komentáře je 2000 znaků
  • HTML tagy nejsou povoleny (budou odstraněny), použít se mohou pouze speciální tagy (jsou uvedeny nad vstupním polem)
  • nový řádek (ENTER) ukončí odstavec a začne nový
  • pokud odpovídáte na jiný komentář, vložte na začátek odstavce (řádku) číslo komentáře v hranatých závorkách