Thursday, June 01, 2006

Configure EtherChannel trunking and VLAN tagging with Cisco 3560

The task: Configure a redundant networking setup between a NetApp filer and a Cisco switch running IOS.

The steps:
1. Pick 2 or more switch ports you would like to trunk together.
2. Configure the switch ports to use 802.1q standard:


conf t
interface gigabitEthernet 0/1
switchport trunk encapsulation dot1q
switchport mode trunk
channel-group 1 mode on
no ip address


3. Make sure that the channel-group mode is set to on and not desired which is the default.
4. Configure the filer to use a multi vif, and then configure VLAN tagged interfaces on top of the vif:

Note: In this example VLAN id 101 is used.
From /etc/rc:

vif create multi vif0 e4a e5a
vlan create -g vif0 101
ifconfig vif0-101 ... ...
...


Dr. Toaster Recommends:

  • Avoid using VLAN id 1 - The filer expects tagging of all Ethernet frames, yet some switches are configured to not tag VLAN id 1.

  • Naming conventions - I advise calling the trunks single0 and multi0 according to their type, and use names such as vif0 for any top-level trunk names.
    Some customers prefer to call the interfaces by their tasks, for example iscsi or exchange.

4 comments:

  1. Anonymous5:12 AM

    thank you for the post.
    What do you use / advise for the Linux side of EtherChannel trunking? have you faced any issue / pitfall with it.
    best regards,
    eric

    ReplyDelete
  2. Ethernet Bonding is the term that Linux distributions typically use.
    You can find a good explanation to configure bonding in RedHat right here:

    http://kbase.redhat.com/faq/FAQ_85_6313.shtm

    Dr. Toaster.

    ReplyDelete
  3. Anonymous2:54 AM

    Thank you for the post.

    Please note that there is a mistake in the netapp create vlan command :

    After the -g option you need a keyword on/off

    best regards

    Jean-Claude Barbet (France)

    ReplyDelete
  4. It is probably possible to get around the problem of VLAN 1 being untagged by changing the native VLAN of the trunk on the Cisco side to an unused VLAN(you would have to do the port-channel members and then the port-channel should inherit it once created.

    I.e.

    interface gi0/1
    switchport vlan native 999
    interface gi0/2
    switchport vlan native 999

    Then create the port-channel and hey presto! VLAN 1 packets will be tagged :)

    ReplyDelete