Pages

network cisco ccna gns3 certification arteq

network cisco ccna gns3 certification arteq
a network runs through it

Search insearchofthecert

Showing posts with label etherchannel. Show all posts
Showing posts with label etherchannel. Show all posts

Wednesday, January 9, 2013

bad vlan mask...

what the hell does that mean... i'll tell you...

the hardware ports have to match the portchannel interface and vice versa, and of course you know this... but how do you detect it... a number of ways...

first off if you're going to make portchannels anyway, save the painful  configuration for the portchannel, don't waste typing on the physical interfaces, they will inherit from the portchannel...

here's an example:


DLS1(config)#int rang f0/3 - 4
DLS1(config-if-range)#sw mode trunk
DLS1(config-if-range)#sw trunk encap dot1q
DLS1(config-if-range)#channel-g 10 mode on
Creating a port-channel interface Port-channel 10


DLS1(config-if-range)#int po10
DLS1(config-if)#sw trunk native vlan 900
DLS1(config-if)#sw trunk allowed vlan 10,20,30,50,70,100


DLS1#sh run int f0/3
Building configuration...

Current configuration : 233 bytes
!
interface FastEthernet0/3
 description Channel to DLS2
 switchport trunk encapsulation dot1q
 switchport trunk native vlan 900
 switchport trunk allowed vlan 10,20,30,50,70,100

 switchport mode trunk
 channel-group 10 mode on


this is basic stuff... and by the book...

DLS1#sh etherch summ

Number of channel-groups in use: 2
Number of aggregators:           2

Group  Port-channel  Protocol    Ports
------+-------------+-----------+-----------------------------------------------
1      Po1(SU)          -        Fa0/1(P)    Fa0/2(P)   
10     Po10(SU)         -        Fa0/3(P)    Fa0/4(P) 
  

and likewise the portchannel will get the earlier garbage from f0/3 - 4...

DLS1#sh run int po10
Building configuration...

Current configuration : 177 bytes
!
interface Port-channel10
 switchport trunk encapsulation dot1q
 switchport trunk native vlan 900
 switchport trunk allowed vlan 10,20,30,50,70,100
 switchport mode trunk


allowed vlan statements can get long, and it's easy to screw up a portchannel, especially if you make changes to the interfaces (f0/3 - 4 in this case)

the portchannel won't inherit from the interfaces...

DLS1(config)#int rang f0/3 - 4
DLS1(config-if-range)#sw trunk allowed vlan 10,20,30,50,100
DLS1(config-if-range)#
Jan  9 15:59:25.974: %EC-5-CANNOT_BUNDLE2: Fa0/3 is not compatible with Fa0/4 and will be suspended (vlan mask is different)
Jan  9 15:59:26.007: %EC-5-CANNOT_BUNDLE2: Fa0/3 is not compatible with Po10 and will be suspended (vlan mask is different)
Jan  9 15:59:26.007: %EC-5-CANNOT_BUNDLE2: Fa0/3 is not compatible with Po10 and will be suspended (vlan mask is different)
Jan  9 15:59:26.007: %EC-5-CANNOT_BUNDLE2: Fa0/4 is not compatible with Po10 and will be suspended (vlan mask is different)


that's the culprit... now suppose you weren't there to see the errors...

DLS1#sh etherchann summ

Number of channel-groups in use: 2
Number of aggregators:           2

Group  Port-channel  Protocol    Ports
------+-------------+-----------+-----------------------------------------------
1      Po1(SU)          -        Fa0/1(P)    Fa0/2(P)   
10     Po10(SD)         -        Fa0/3(s)    Fa0/4(s)


you know you have a problem with the etherchannel, but you're not sure why... you could eye a comparison between sh run's on the interfaces and the portchannel, but that's kind of clumsy...

this will give you an instant answer...

DLS1#debug etherch all
PAgP/LACP Shim All debugging is on
DLS1#
Jan  9 16:06:58.338: FEC: pagp_switch_agc_compatable: comparing GC values of Fa0/3 Po10 flag = 1 1
Jan  9 16:06:58.338: FEC: pagp_switch_port_attrib_diff: Fa0/3 Po10 same
Jan  9 16:06:58.338: FEC: pagp_switch_agc_compatable: EC - attrib incompatable for Fa0/3; vlan mask is different
Jan  9 16:06:58.338: FEC: pagp_switch_choose_unique: Fa0/3 incompatable with agport Po10
Jan  9 16:06:58.338: FEC: pagp_switch_agc_compatable: comparing GC values of Fa0/4 Po10 flag = 1 1
Jan  9 16:06:58.338: FEC: pagp_switch_port_attrib_diff: Fa0/4 Po10 same
Jan  9 16:06:58.338: FEC: pagp_switch_agc_compatable: EC - attrib incompatable for Fa0/4; vlan mask is different
Jan  9 16:06:58.338: FEC: pagp_switch_choose_unique: Fa0/4 incompatable with agport Po10


yeah, it's telling you the damn allowed vlan's are different...

knowing that the interfaces inherit from the portchannel, just adjust the portchannel...

DLS1(config-if)#sw trunk allowed vlan 10,20,30,50,70,100
DLS1(config-if)#
Jan  9 16:13:28.014: %EC-5-CANNOT_BUNDLE2: Fa0/4 is not compatible with Po10 and will be suspended (vlan mask is different)
Jan  9 16:13:28.047: %EC-5-CANNOT_BUNDLE2: Fa0/4 is not compatible with Po10 and will be suspended (vlan mask is different)
Jan  9 16:13:28.878: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan50, changed state to up
Jan  9 16:13:28.878: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan70, changed state to up
Jan  9 16:13:29.037: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/3, changed state to up
Jan  9 16:13:29.087: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/4, changed state to up
Jan  9 16:13:30.027: %LINK-3-UPDOWN: Interface Port-channel10, changed state to up
Jan  9 16:13:31.034: %LINEPROTO-5-UPDOWN: Line protocol on Interface Port-channel10, changed state to up


it's very nice how that works out...

DLS1#sh etherch summ

Number of channel-groups in use: 2
Number of aggregators:           2

Group  Port-channel  Protocol    Ports
------+-------------+-----------+-----------------------------------------------
1      Po1(SU)          -        Fa0/1(P)    Fa0/2(P)   
10     Po10(SU)         -        Fa0/3(P)    Fa0/4(P)
   

if you were in the data room you might have noticed the amber lights on the interfaces signifying suspended versus up (green), or down(darkness)...

oh yeah, if you're really serious about this shit, you're gonna need some switches...

Wednesday, April 25, 2012

etherchannel numbering...

the net acad lab wants you to label the three prong switch lab etherchannels as 1,1 2,2 and 2,1...

dls1#config t
Enter configuration commands, one per line.  End with CNTL/Z.
dls1(config)#int rang f0/7 - 8
dls1(config-if-range)#channel-g 1 mode active
Creating a port-channel interface Port-channel 1
dls1(config)#int rang f0/9 - 10
dls1(config-if-range)#channel-g 2 mode active
Creating a port-channel interface Port-channel 2



so dls1 has 2 channels, 1 goes to als1 and 2 goes to als2...
then the channel from als1 to als 2 is set as channel 2 connecting to channel 1...

i don't like it...

als1#sh ether summ                                                             
omitted 
Group  Port-channel  Protocol    Ports                                         
------+-------------+-----------+-----------------------------------------------
1      Po1(SU)         LACP      Fa0/7(Pd)   Fa0/8(P)                          
2      Po2(SU)         LACP      Fa0/11(Pd)  Fa0/12(P)   

als2#sh ether summ
omitted
Group  Port-channel  Protocol    Ports
------+-------------+-----------+-----------------------------------------------
1      Po1(SU)         LACP      Fa0/11(Pd)  Fa0/12(P)  
2      Po2(SU)         LACP      Fa0/9(Pd)   Fa0/10(P)  
 

i prefer the channels connecting to each other with a measure of sanity... als1 to als2 should be 3 to 3

dls1 to als1 channel 1
dls1 to als2 channel 2
als1 to als2 channel 3

so sue me... make the numbers meaningful, not confusing...


Sunday, March 11, 2012

best practices?

when you are implementing a technology such as stp, etherchannel,  etc. there are often standardized approaches for this implementation, and then there are many different approaches...

what works is oftentimes the best within the circumstances of the implementation...

you know the old saw; there is the right way, the wrong way and cisco's way...

i prefer to set the interface as a trunk first in case i want to whack the channel... but this is a lab, not real world... understand the circumstances under which you configure, and configure according to those circumstances...

states and modes follow...


asw2#sh run int fa0/5
Building configuration...

Current configuration : 57 bytes
!
interface FastEthernet0/5
 speed 100
 duplex full
end

asw2(config)#int f0/5
asw2(config-if)#channel-g 1 mode on
asw2(config-if)#do sh run int f0/5
Building configuration...

Current configuration : 82 bytes
!
interface FastEthernet0/5
 speed 100
 duplex full
 channel-group 1 mode on
end

asw2(config-if)#no channel-g 1 mode on
asw2(config-if)#do sh run int f0/5
Building configuration...

Current configuration : 57 bytes
!
interface FastEthernet0/5
 speed 100
 duplex full
end

asw2(config-if)#sw mode trunk
asw2(config-if)#do sh run int f0/5
Building configuration...

Current configuration : 80 bytes
!
interface FastEthernet0/5
 switchport mode trunk
 speed 100
 duplex full
end

asw2(config-if)#no sw mode trunk
asw2(config-if)#do sh run int f0/5
Building configuration...

Current configuration : 57 bytes
!
interface FastEthernet0/5
 speed 100
 duplex full
end

asw2(config-if)#channel-g 1 mode on
asw2(config-if)#do sh int f0/5 trunk

Port        Mode         Encapsulation  Status        Native vlan
Fa0/5       desirable    802.1q         not-trunking  1

http://insearchofthecert.blogspot.com/search/label/etherchannel

more of channels and trunks...


use the interface range command and add ports into a channel...

dsw2(config)#int rang f0/1 - 2
dsw2(config-if-range)#channel-group 1 mode on
dsw2(config-if-range)#end

i usually make the ports trunks first on both ends in case i want to revert back, but that's an option
and in the case below i gave the port channel an ip address

dsw2#sh run int po1
Building configuration...


Current configuration : 84 bytes
!
interface Port-channel1
no switchport
ip address 10.2.4.14 255.255.255.252
end

there isn't any single way to make the channel, and negotiation protocols are an option as well, such as pagp and lacp...

dsw2#sh int port-channel1
Port-channel1 is up, line protocol is up (connected)
  Hardware is EtherChannel, address is 000b.5fc9.0000 (bia 000b.5fc9.0000)
  Internet address is 10.2.4.14/30
  MTU 1500 bytes, BW 200000 Kbit, DLY 100 usec,
     reliability 255/255, txload 1/255, rxload 1/255

note the aggregate bandwidth...  understanding the protocols and when to use them, esp. lacp is vital...

make the ports into trunks first (i think thats best) then channelize them...

asw2#config t
Enter configuration commands, one per line.  End with CNTL/Z.
asw2(config)#int range f0/5 -6
asw2(config-if-range)#sw mode trunk
asw2(config-if-range)#channel-g 1 mode on
Creating a port-channel interface Port-channel 1

note they are suspended because i didn't want to connect them, but they show as members of po1... i hope that doesn't confuse you, i haven't had any coffee yet...

asw2#sh int f0/5 sw
Name: Fa0/5
Switchport: Enabled
Administrative Mode: trunk
Operational Mode: down (suspended member of bundle Po1)
Administrative Trunking Encapsulation: dot1q
Negotiation of Trunking: On

asw2#sh int f0/6 sw
Name: Fa0/6
Switchport: Enabled
Administrative Mode: trunk
Operational Mode: down (suspended member of bundle Po1)
Administrative Trunking Encapsulation: dot1q
Negotiation of Trunking: On

the channel is not a trunk... the port channel is an aggregation of 2 or more links... a trunk behaves much differently due to stp... like the output below... f0/1 -2 are channelized whereas f0/3 - 4 are trunked on dsw2... stp is in effect on the trunks only...
dsw2#sh spann


VLAN0001
  Spanning tree enabled protocol ieee
  Root ID    Priority    32769
             Address     0009.b73f.ce80
             Cost        19
             Port        3 (FastEthernet0/3)
             Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec


  Bridge ID  Priority    32769  (priority 32768 sys-id-ext 1)
             Address     000b.5fc9.0000
             Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec
             Aging Time 300


Interface           Role Sts Cost      Prio.Nbr Type
------------------- ---- --- --------- -------- --------------------------------


Fa0/3               Root FWD 19        128.3    P2p
Fa0/4               Desg FWD 19        128.4    P2p




dsw2#sh int po1
Port-channel1 is up, line protocol is up (connected)
  Hardware is EtherChannel, address is 000b.5fc9.0000 (bia 000b.5fc9.0000)
  Internet address is 10.2.4.14/30
  MTU 1500 bytes, BW 200000 Kbit, DLY 100 usec,
     reliability 255/255, txload 1/255, rxload 1/255
  Encapsulation ARPA, loopback not set
  Keepalive set (10 sec)
  Full-duplex, 100Mb/s, media type is 10/100BaseTX
  input flow-control is off, output flow-control is unsupported
  Members in this channel: Fa0/1 Fa0/2




Sunday, January 29, 2012

mode bouncing...

i've been switching between negotiation modes in channel groups...
some things...

setting the channel group mode to on results in default etherchannel; no negotiation, similar to trunk mode on...
switching around protocols doesn't have to be performed with channel-priority, it can be done simply by choosing the channel group mode:


sw2950_01(config-if-range)#channel-group 6 mode ?
  active     Enable LACP unconditionally
  auto       Enable PAgP only if a PAgP device is detected
  desirable  Enable PAgP unconditionally
  on         Enable Etherchannel only
  passive    Enable LACP only if a LACP device is detected

when the interfaces go into errdisable, shut and no shut needs to be performed on the poX to bring the aggregated port back...

sw2950_01#sh etherch summ
Flags:  D - down        P - in port-channel
        I - stand-alone s - suspended
        H - Hot-standby (LACP only)
        R - Layer3      S - Layer2
        u - unsuitable for bundling
        U - in use      f - failed to allocate aggregator
        d - default port

Number of channel-groups in use: 2
Number of aggregators:           2

Group  Port-channel  Protocol    Ports
------+-------------+-----------+-----------------------------------------------

1      Po1(SU)         LACP      Fa0/5(Pd)   Fa0/6(P)
2      Po2(SU)         LACP      Fa0/7(Pd)   Fa0/8(P)





Saturday, January 28, 2012

bundles...

  etherchannel can be configured with 2 to 8 connections per bundle.  this means at the high end a bundle could potentially carry 1600Mbps given fastethernet technology; arguably 200Mbps per link at capacity. this is probably not realistic, but a theoretical yardstick measure of performance..

that given, it is also not realistic that each link in the bundle will carry it's max weight, in fact the reality is that the distribution across the individual links in the bundle will be uneven at best...

it is also true that in the event of single link failure, an adjacent link will pick up the traffic as needed, and so on... conversely, as links are restored, traffic is redistributed back to the once failed links...

bundles are comprised of up to 8 of the same physical type ethernet... they should be in the same vlan and if trunks, they should share the same native vlan, as well as speed, duplex and spanning tree settings...

to be continued...

of channels and trunks...

this is very exciting...

i got some more crossed cables today specifically to experiment with etherchannel, and trunking at the same time without losing connectivity...

i now have a 4 wire trunk and a 4 wire etherchannel across the 3 switches... trunk = 2 xcables from s2 to s1, then 2 xcables from s1 to 3550... likewise for the etherchannel, 2 xcables from s2 to s1, then 2 from s1 to 3550...

as i thought would happen, the etherchannel took over and put the trunk ports in alt/blk... see below


sw2950_02#sh spann

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/1            Altn BLK 19        128.1    P2p
Fa0/2            Altn BLK 19        128.2    P2p
Po1              Root FWD 12        128.65   P2p


when i shut down the etherchannel, the network converges on the trunk, like so...


sw2950_02(config)#int po1
sw2950_02(config-if)#shut

05:46:32: %LINEPROTO-5-UPDOWN: Line protocol on Interface Port-channel1, changed
 state to down
05:46:33: %LINK-5-CHANGED: Interface FastEthernet0/5, changed state to administr
atively down
05:46:33: %LINK-5-CHANGED: Interface FastEthernet0/6, changed state to administr
atively down



the trunk is back in business...


sw2950_02(config-if)#


Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/1            Root FWD 19        128.1    P2p
Fa0/2            Altn BLK 19        128.2    P2p




then



sw2950_02(config-if)#no shut
05:50:10: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/5, chang
ed state to up
05:50:10: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/6, chang
ed state to up
sw2950_02(config-if)#
05:50:11: %LINK-3-UPDOWN: Interface Port-channel1, changed state to up
05:50:12: %LINEPROTO-5-UPDOWN: Line protocol on Interface Port-channel1, changed
 state to up

and the etherchannel takes over once again...


sw2950_02(config-if)#do sh ether summ
Flags:  D - down        P - in port-channel
        I - stand-alone s - suspended
        H - Hot-standby (LACP only)
        R - Layer3      S - Layer2
        u - unsuitable for bundling
        U - in use      f - failed to allocate aggregator
        d - default port

Number of channel-groups in use: 1
Number of aggregators:           1

Group  Port-channel  Protocol    Ports
------+-------------+-----------+-----------------------------------------------

1      Po1(SU)          -        Fa0/5(Pd)   Fa0/6(P)


but you knew this would happen...

Sunday, January 22, 2012

my members...



etherchannel configuration...  it's a good idea if both sides match...


interface FastEthernet0/1
 switchport mode trunk
 speed 100
 duplex full
 channel-group 1 mode on
!
interface FastEthernet0/2
 switchport mode trunk
 speed 100
 duplex full
 channel-group 1 mode on
!
interface FastEthernet0/3
 switchport mode trunk
 speed 100
 duplex full
 channel-group 2 mode on
!
interface FastEthernet0/4
 switchport mode trunk
 speed 100
 duplex full
 channel-group 2 mode on

nice way to keep track of membership...


sw2950_01#sh int port-chan 1 | inc Members
  Members in this channel: Fa0/1 Fa0/2
sw2950_01#


sw2950_01#sh int port-chan 2 | incl Members
  Members in this channel: Fa0/3 Fa0/4
sw2950_01#

don't let spanning tree decide root... the root id is the id of the root and the bridge id is the id of this switch... if  the priority of the two is equal, this is the root... if the mac's are the same, this is the root... if it says this is the root, this is the root... if all ports are forwarding, this is the root... how do you like my root...


sw2950_01(config)#spann vlan 50 root primary

sw2950_01(config)#do sh spann vlan 50

VLAN0050
  Spanning tree enabled protocol rstp
  Root ID    Priority    24626
             Address     0009.b752.d780
             This bridge is the root
             Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec

  Bridge ID  Priority    24626  (priority 24576 sys-id-ext 50)
             Address     0009.b752.d780
             Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec
             Aging Time 300

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Po2              Desg FWD 12        128.65   P2p
Po1              Desg FWD 12        128.66   P2p

sw2950_01(config)#

and some aggregation up inside..


sw2950_01(config)#do sh int port-channel1
Port-channel1 is up, line protocol is up (connected)
  Hardware is EtherChannel, address is 0009.b752.d781 (bia 0009.b752.d781)
  MTU 1500 bytes, BW 200000 Kbit, DLY 1000 usec,
     reliability 255/255, txload 1/255, rxload 1/255
  Encapsulation ARPA, loopback not set
  Full-duplex, 100Mb/s, media type is unknown media type
  input flow-control is off, output flow-control is off
  Members in this channel: Fa0/1 Fa0/2