Switching hibaticket


Egy érdekes hibát kaptam egyik olvasómtól, amit nem egészen értett. Én néhány perc alatt rájöttem a megoldásra, de esetleg hasznos lehet a feladat, nem feltétlenül könnyű az ilyen jellegű hibákat megtalálni.

A topológia a következő:

vtp_issue

 

vtp_issue_unl

Szituáció: mivel VTP domain “A” lebontásra kerül, ezért SW7-et át kell tenni VTP domain “B”-be. De mivel ez csak később történik meg, az adminisztrátor (megelőzve VTP “B” domain esetleges későbbi VLAN törlését [kliens felülírhatja a servert, ha magasabb a revision number]), átrakta SW7-et transparent módba. És ekkor kezdődtek a problémák.

A VLAN-ok SW1-SW2-n végződnek (nem egy modern design), fókuszáljunk most tehát erre a topológiára, és hagyjuk ki a routingot és a hálózat többi részét. R1, R2 ésR3 különböző VLAN-okban vannak, és a core rétegből pingelhetőnek kell lenniük, hiszen ott végződnek a VLAN-ok. Először is nézzük a konfigurációkat (ha Te is felépíted a rajznak megfelelően a topológiát, mehet a copy-paste, ha szeretnéd megtalálni a hibát és/vagy követni a leírást).

SW1
conf t
vlan 2-4
int e0/0
sw trunk en d
switchport mode trunk
no shut
int e1/0
sw trunk en d
switchport mode trunk
no shut
int e1/1
sw trunk en d
switchport mode trunk
no shut
int vl1
no shut
ip add 10.1.1.2 255.255.255.0
stand 1 ip 10.1.1.1
stand 1 prio 110
int vl2
ip add 192.168.2.2 255.255.255.0
standby 2 ip 192.168.2.1
standby 2 priority 110
int vl3
ip add 192.168.3.2 255.255.255.0
standby 3 ip 192.168.3.1
standby 3 priority 110
int vl4
ip add 192.168.4.2 255.255.255.0
standby 4 ip 192.168.4.1
standby 4 priority 110
vtp domain C
vtp mode server
vlan 1-4 root primary
end

SW2
conf t
vlan 2-4
int e0/0
sw trunk en d
switchport mode trunk
no shut
int e1/0
sw trunk en d
switchport mode trunk
no shut
int e1/1
sw trunk en d
switchport mode trunk
no shut
int vl1
no shut
ip add 10.1.1.3 255.255.255.0
stand 1 ip 10.1.1.1
stand 1 prio 100
int vl2
ip add 192.168.2.3 255.255.255.0
standby 2 ip 192.168.2.1
standby 2 priority 100
int vl3
ip add 192.168.3.3 255.255.255.0
standby 3 ip 192.168.3.1
standby 3 priority 100
int vl4
ip add 192.168.4.3 255.255.255.0
standby 4 ip 192.168.4.1
standby 4 priority 100
vtp domain C
vtp mode server
end

SW3
conf t
vlan 2-4
int e0/0
sw trunk en d
switchport mode trunk
no shut
int e0/2
sw trunk en d
switchport mode trunk
no shut
int e1/0
sw trunk en d
switchport mode trunk
no shut
int vl1
ip add 10.1.1.13 255.255.255.0
no shut
vtp domain B
vtp mode server
vtp pruning
ip default-gateway 10.1.1.1
end

SW4
conf t
vlan 2-4
int e0/0
sw trunk en d
switchport mode trunk
no shut
int e0/2
sw trunk en d
switchport mode trunk
no shut
int e1/0
sw trunk en d
switchport mode trunk
no shut
int vl1
ip add 10.1.1.14 255.255.255.0
no shut
vtp domain B
vtp mode server
ip default-gateway 10.1.1.1
end

SW5
conf t
vlan 2-4
int e1/0
sw trunk en d
switchport mode trunk
no shut
int e0/0
sw trunk en d
switchport mode trunk
no shut
int vl1
ip add 10.1.1.15 255.255.255.0
no shut
vtp domain B
vtp mode server
vtp pruning
ip default-gateway 10.1.1.1
end

SW6
conf t
vlan 2-4
int e1/0
sw trunk en d
switchport mode trunk
no shut
int e0/0
sw trunk en d
switchport mode trunk
no shut
int vl1
ip add 10.1.1.16 255.255.255.0
no shut
vtp domain B
vtp mode server
ip default-gateway 10.1.1.1
end

SW7
conf t
vlan 2-4
int e1/0
sw trunk en d
switchport mode trunk
no shut
int e0/3
sw trunk en d
switchport mode trunk
no shut
int e0/0
sw acc vl 2
no shut
int e0/1
sw acc vl 3
no shut
int e0/2
sw acc vl 4
no shut
int vl1
ip add 10.1.1.17 255.255.255.0
no shut
vtp domain A
vtp mode client
ip default-gateway 10.1.1.1
end

R1
conf t
int e0/0
ip add 192.168.2.10 255.255.255.0
no shut
ip route 0.0.0.0 0.0.0.0 192.168.2.1
end

R2
conf t
int e0/0
ip add 192.168.3.10 255.255.255.0
no shut
ip route 0.0.0.0 0.0.0.0 192.168.3.1
end

R3
conf t
int e0/0
ip add 192.168.4.10 255.255.255.0
no shut
ip route 0.0.0.0 0.0.0.0 192.168.4.1
end

 

Nézzük először, mikor még minden működött.

 

Minden switch pingelhető az SVI interface-én:

SW1#ping 10.1.1.255 rep 1
Type escape sequence to abort.
Sending 1, 100-byte ICMP Echos to 10.1.1.255, timeout is 2 seconds:
Reply to request 0 from 10.1.1.15, 2 ms
Reply to request 0 from 10.1.1.16, 4 ms
Reply to request 0 from 10.1.1.3, 4 ms
Reply to request 0 from 10.1.1.14, 3 ms
Reply to request 0 from 10.1.1.17, 3 ms
Reply to request 0 from 10.1.1.13, 2 ms
SW1#

 

Ugyanez igaz a 3 routerre is:

SW1#ping 192.168.2.10 rep 1
Type escape sequence to abort.
Sending 1, 100-byte ICMP Echos to 192.168.2.10, timeout is 2 seconds:
!
Success rate is 100 percent (1/1), round-trip min/avg/max = 2/2/2 ms
SW1#ping 192.168.3.10 rep 1
Type escape sequence to abort.
Sending 1, 100-byte ICMP Echos to 192.168.3.10, timeout is 2 seconds:
!
Success rate is 100 percent (1/1), round-trip min/avg/max = 2/2/2 ms
SW1#ping 192.168.4.10 rep 1
Type escape sequence to abort.
Sending 1, 100-byte ICMP Echos to 192.168.4.10, timeout is 2 seconds:
!
Success rate is 100 percent (1/1), round-trip min/avg/max = 2/2/2 ms
SW1#

 

A migráció előkészítéseként tehát SW7-et áttettük transparent módba.

SW7#conf t
Enter configuration commands, one per line. End with CNTL/Z.
SW7(config)#vtp mode transparen
Setting device to VTP Transparent mode for VLANS.
SW7(config)#end
SW7#

 

És most már nem megy a kommunikáció.

SW1#ping 192.168.4.10 rep 10
Type escape sequence to abort.
Sending 10, 100-byte ICMP Echos to 192.168.4.10, timeout is 2 seconds:
..........
Success rate is 0 percent (0/10)
SW1#

 

Nézzük, mi lehet a gond. És itt jön képbe az, hogy igazán érti -e az ember a technológiákat. Gondoljuk végig, mi okozhatja a hibát.

Layer2-es hiba elhárításánál a legjobb barátunk mindig a STP kimenet. Ebből sok dolgot egyből ki lehet szúrni. SW7-en és SW3-n is megnézzük, VLAN2-re minden rendben van -e.

SW7#sh span vl 2
VLAN0002
 Spanning tree enabled protocol ieee
 Root ID Priority 24578
 Address aabb.cc00.0100
 Cost 200
 Port 5 (Ethernet1/0)
 Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec

 Bridge ID Priority 32770 (priority 32768 sys-id-ext 2)
 Address aabb.cc00.0700
 Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
 Aging Time 300 sec

Interface Role Sts Cost Prio.Nbr Type
------------------- ---- --- --------- -------- --------------------------------
Et0/0 Desg FWD 100 128.1 Shr
Et0/3 Altn BLK 100 128.4 Shr
Et1/0 Root FWD 100 128.5 Shr


SW7#

 

SW3#sh span vl 2

VLAN0002
 Spanning tree enabled protocol ieee
 Root ID Priority 24578
 Address aabb.cc00.0100
 Cost 100
 Port 33 (Ethernet1/0)
 Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec

 Bridge ID Priority 32770 (priority 32768 sys-id-ext 2)
 Address aabb.cc00.0300
 Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
 Aging Time 300 sec

Interface Role Sts Cost Prio.Nbr Type
------------------- ---- --- --------- -------- --------------------------------
Et0/0 Desg FWD 100 128.1 Shr
Et0/2 Desg FWD 100 128.3 Shr
Et1/0 Root FWD 100 128.33 Shr


SW3#

 

Ez eddig jónak tűnik.  Tehát STP hiba kilőve (hacsak nem IOS bug, de nem az lesz :)). Érdemes még megnézni a trunk állapotot SW3-n, hogy megbizonyosodjunk arról, hogy tényleg jók vagyunk -e Layer2-ben.

 

SW3#sh int trunk

Port Mode Encapsulation Status Native vlan
Et0/0 on 802.1q trunking 1
Et0/2 on 802.1q trunking 1
Et1/0 on 802.1q trunking 1

Port Vlans allowed on trunk
Et0/0 1-4094
Et0/2 1-4094
Et1/0 1-4094

Port Vlans allowed and active in management domain
Et0/0 1-4
Et0/2 1-4
Et1/0 1-4

Port Vlans in spanning tree forwarding state and not pruned
Et0/0 1
Et0/2 1
Et1/0 1-4
SW3#

 

És itt bizony meg is van a hiba. Látjuk, hogy SW1 felé VLAN 1-4-ig trunk-ben van a port, E0/0 (SW7 felé) viszont csak a VLAN1 él. Hmmmmm…..

 

Olvassuk el figyelmesen a kimenetet:

 

" Vlans in spanning tree forwarding state and not pruned"

 

STP forwardingot megnéztük, pipa. And not pruned… Hmm… VTP pruning?

SW3#sh vtp status | i Pruning
VTP Pruning Mode : Enabled
SW3#

 

Azaz a VTP pruning letiltja SW7 felé a kommunikációt. Miért?

Ne feledjük, SW7 már Transparent módban van. Azaz a VTP üzeneteket csak továbbítja, de nem dolgozza fel, nem válaszol rájuk. Ez igaz a VTP pruning üzenetekre is.

A debug SW7-en megmutatja nekünk, hogy a switch csak relay funkciót tölt be, hiszen Transparent módban van:

SW7#debug sw-vlan vtp packets
*Jan 25 22:02:31.702: VTP LOG RUNTIME: Relaying packet received on trunk Et1/0
- in TRANSPARENT MODE (nc = false)

 

SW3-n látjuk, hogy E0/2 timeout-ra fut, nem kap választ a VTP üzenetre, illetve azt is, hogy E1/0-n VTP domain “C” üzenet érkezett, ezért azt nem prune-lja, hiszen látja, hogy egy másik VTP domain van odakapcsolva:

SW3#debug sw-vlan vtp pruning
*Jan 25 22:04:31.441: VTP LOG RUNTIME: Dropping packet received on
trunk Et1/0 - not in domain C

VTP PRUNING DEBUG: trunk Et0/2 timeout
VTP PRUNING DEBUG: trunk Et0/0 timeout
VTP PRUNING DEBUG: trunk Et0/0 rx Join, len=166 (domain A)


 

Ezért Prune-li a VLAN-okat (VLAN1 ugye “Prune in-eligible”)

Többféle megoldás lehet. VTP pruning kikapcsolása, vagy az adott VLAN-ok eltávolítása a Pruning listából. Nézzük utóbbit (és ugyanez kell SW4 E0/2-n is persze, mert ha az SW7-SW3 link leesik, ugyanebbe a folyóba lépünk még egyszer):

SW3(config-if)#switchport trunk pruning vlan remove 2-4
SW3(config-if)#end
SW3#VTP PRUNING INFO: change A pruning eligibility
VTP PRUNING DEBUG: vlan 2 pruning eligibility change: 20->0
VTP PRUNING INFO: TEt0/0,V2: st Pruned ,event Inelig=>new st NoPrune
VTP PRUNING INFO: TEt0/2,V2: st Pruned ,event Inelig=>new st NoPrune
VTP PRUNING DEBUG: vlan 3 pruning eligibility change: 10->0
VTP PRUNING INFO: TEt0/0,V3: st Pruned ,event Inelig=>new st NoPrune
VTP PRUNING INFO: TEt0/2,V3: st Pruned ,event Inelig=>new st NoPrune
VTP PRUNING DEBUG: vlan 4 pruning eligibility change: 8->0
VTP PRUNING INFO: TEt0/0,V4: st Pruned ,event Inelig=>new st NoPrune
VTP PRUNING INFO: TEt0/2,V4: st Pruned ,event Inelig=>new st NoPrune
SW3#

 

Azaz látjuk, hogy E0/2 felé az új állapot “NoPrune”.

Nézzük meg most a trunk állapotokat SW3-n:

SW3#sh int trunk

Port Mode Encapsulation Status Native vlan
Et0/0 on 802.1q trunking 1
Et0/2 on 802.1q trunking 1
Et1/0 on 802.1q trunking 1

Port Vlans allowed on trunk
Et0/0 1-4094
Et0/2 1-4094
Et1/0 1-4094

Port Vlans allowed and active in management domain
Et0/0 1-4
Et0/2 1-4
Et1/0 1-4

Port Vlans in spanning tree forwarding state and not pruned
Et0/0 1
Et0/2 1-4
Et1/0 1-4
SW3#

 

Na ez az, mindjárt jobb a helyzet! Ezt kell látnunk

És megindult a kommunikáció is:

SW1#ping 192.168.2.10
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.2.10, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/4/5 ms
SW1#

 

Tanulság:

  • Ne használj VTP-t, ha mégis, akkor VTPv3-t (bár ez ebből a szempontból lényegtelen)
  • Ne használj VTP pruning-ot, csak a baj van vele
  • Ha Transparent switch van a hálózatban, kiemelten figyelj a Layer2-re.
  • Layer2 hibát nagyon nehéz kibogozni, a két legjobb parancs ilyen esetre a
show spanning-tree vlan X

és a

show int trunk

 

Illetve ha van lehetőség, csinálj SVI-t a közbenső switcheken, hogy szűkíthesd a hiba határát.

Remélem volt olyan olvasó, akinek hasznos volt.

 

 

 

 

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.