Examples using the BANS.LAN (IBM Advanced Network Services) Driver This file gives examples of load and bind statements to add to your AUTOEXEC.NCF file for setting up Advanced Network Services on IBM network adapters. CONTENTS Example 1: 2 Adapter Fault Tolerant Teams (IBM Netfinity & IBM 10/100 Server adapters) Example 2: 2 Adapter ALB Team with 2 PROTOCOLS (E_II Frame TYPE) Example 3: 2 TEAMS - 2 adapter AFT team & 4 Adapter FEC team Example 4: 1 Adapter, 4 FrameTypes, 2 802.1q VLANs (#5&6), 2 Protocols Example 5: 2 Adapter ALB team, 5 VLANs, 1 Frame Type, 2 Protocols NOTE: This file gives examples of load and bind statements to add to your AUTOEXEC.NCF file for setting up Advanced Network Services on IBM network adapters. Different models of IBM network adapters are used from one example to another to illustrate that the syntax for BANS.LAN is the same from one adapter to another. You can modify these examples to reflect a different set of physical adapters by substituting the base driver loaded in the example with the appropriate driver for the actual adapter. For instance, to use an IBM Netfinity adapter (which uses the base driver IBMGE.LAN) in place of an IBM 10/100 Ethernet Security adapter (which uses CIBMFE.LAN) replace "CIBMFE" with "IBMGE" throughout the example for the adapter in question. #XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX # Example 1: 2 Adapter Fault Tolerant Team (IBM Netfinity & 10/100 Ethernet Server Adapters) # The following is an example of an AFT team that consists of a # IBM Netfinity adapter and a 10/100 Server adapter. The # IBM Netfinity is the primary and the 10/100 Server is the secondary. # For the sake of simplicity, only one frame type, the default of # 802.2, is used. Because the default frame type is used, it does # not need to be specified on the command line. It is also # assumed that only one instance of each adapter is present in the # system so a slot number does not need to be specified. ; First the base driver must be loaded for each adapter and frame type ; involved in the team. As this example only uses 802.2, each adapter ; only has it's base driver loaded once. load IBMGE load CIBMFE ; Second step is to load BANS.LAN to form the basis of a team. For ; this example BANS is only loaded once. If multiple frame types are ; used, BANS is loaded once for each frame type. load BANS ; Once BANS.LAN is loaded, it looks like a protocol, so we can bind it ; to the physical adapter. BANS.LAN needs to be bound to each physical ; adapter in the team. The "PRIMARY" keyword is used to make BANS ; favor one particular adapter. If a team loses the connection on it's ; primary adapter it will switch to the other adapter(s). If the ; primary adapter recovers, BANS will switch back to it. In mixed ; speed teams always set the fastest adapter in the team as the ; primary. bind BANS IBMGE PRIMARY bind BANS CIBMFE ; The commit command creates the team. The default mode is AFT. Since ; that is what this example is after, we do not need to specify a mode. load BANS COMMIT ; Once the team has been committed, it looks like an adapter, so now we ; can bind protocols to BANS. bind IPX BANS net=102 #XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX # Example 2: 2 Adapter ALB Team with 2 PROTOCOLS (E_II Frame TYPE) # This example is slightly more complicated. It still only uses one # frame type, but it uses ethernet_II which is not the default and must # be specified. # It will be a load balanced team (ALB) of 10/100 Server adapters # and have both IPX and IP bound to the BANS team. This example # assumes a server with 2 10/100 Server adapters, one in PCI slot # 1 and the other in PCI slot 2. ;Load TCPIP.NLM. This can be done at any point before binding IP. Load TCPIP ; Load the base drivers for each adapter in the team. Since the ; default frame type (802.2) is not the one in use, the frame type ;(ethernet_ii) must be specified on the driver load line. Also, as two ; different 10/100 Server adapters are in use, each one needs to ; be assigned a name for later reference. load CIBMFE slot=1 frame=ETHERNET_II name=Primary_CIBMFE_II load CIBMFE slot=2 frame=ETHERNET_II name=Secondary_CIBMFE_II ; Load BANS.LAN to form the groundwork for the team. Again, the frame ; type needs to be specified as it is not the default. If multiple ; frame types, multiple VLANs or multiple teams get used then this ; command requires that a "name" is issued for each instance of BANS. ; In this example a "name" for the team is optional. load BANS frame=ETHERNET_II ; Bind BANS.LAN to each physical adapter using the names we defined ; when the base drivers were loaded bind BANS Primary_CIBMFE_II bind BANS Secondary_CIBMFE_II ; Create the team in load balancing mode. load BANS COMMIT MODE=ALB ; bind both IPX and IP as if BANS was a physical adapter. bind IPX BANS net=111 bind IP BANS Address=192.168.1.1 Mask=255.255.255.0 #XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX # Example 3: 2 TEAMS - 2 adapter AFT team & 4 Adapter FEC team # This example will make 2 teams. The first will be a fault tolerant # team of a IBM Netfinity Server Adapter (IBMGE.LAN) and a 10/100 Ethernet # (CIBMFE.LAN). The second team will consist of four 10/100 Ethernet # Server adapters (CIBMFE.LAN) configured as a "Fast Ether Channel" team. # This example uses IPX on both ethernet 802.2 and ethernet II. It also # uses IP on ethernet II. ;load TCPIP.NLM. Must be done before IP is bound. LOAD TCPIP ; Load the base drivers for the first team. LOAD IBMGE SLOT=1 FRAME=Ethernet_802.2 NAME=GIG_E82 LOAD IBMGE SLOT=1 FRAME=Ethernet_II NAME=GIG_EII LOAD CIBMFE SLOT=2 FRAME=Ethernet_802.2 NAME=100M_E82 LOAD CIBMFE SLOT=2 FRAME=Ethernet_II NAME=100M_EII ; Load BANS.LAN for the first team. The team number is included on the ; command line here. If "TEAM=1" is not included, BANS will default to ; team 1, so for this portion of the example, the "TEAM" command line ; switch is optional. LOAD BANS FRAME=ETHERNET_802.2 NAME=GIG_FT_E82 TEAM=1 LOAD BANS FRAME=ETHERNET_802.2 NAME=GIG_FT_EII TEAM=1 ; Bind BANS to the base driver for each adapter and each frame type. ; Bind to the name of the base driver instance (assigned when the ; driver was loaded) and specify the team number. BIND BANS GIG_E82 TEAM=1 PRIMARY BIND BANS GIG_EII TEAM=1 PRIMARY BIND BANS 100M_E82 TEAM=1 BIND BANS 100M_EII TEAM=1 ; commit for team 1 LOAD BANS COMMIT MODE=AFT TEAM=1 ; Bind IPX to both frame types and bind IP to ethernet II. BIND IPX GIG_FT_E82 NET=102 BIND IPX GIG_FT_EII NET=111 BIND IP GIG_FT_EII ADDR=128.181.11.1 MASK=255.255.255.0 ; Now load the base drivers for the second team (FEC). LOAD CIBMFE SLOT=6 FRAME=Ethernet_802.2 NAME=FEC_1_E82 LOAD CIBMFE SLOT=6 FRAME=Ethernet_II NAME=FEC_1_EII LOAD CIBMFE SLOT=5 FRAME=Ethernet_802.2 NAME=FEC_2_E82 LOAD CIBMFE SLOT=5 FRAME=Ethernet_II NAME=FEC_2_EII LOAD CIBMFE SLOT=4 FRAME=Ethernet_802.2 NAME=FEC_3_E82 LOAD CIBMFE SLOT=4 FRAME=Ethernet_II NAME=FEC_3_EII LOAD CIBMFE SLOT=3 FRAME=Ethernet_802.2 NAME=FEC_4_E82 LOAD CIBMFE SLOT=3 FRAME=Ethernet_II NAME=FEC_4_EII ; Load BANS.LAN for the second team. Name each frame type with the ; "NAME" keyword and specify the second team with the "TEAM=2" keyword. LOAD BANS FRAME=ETHERNET_802.2 NAME=FEC_TEAM_E82 TEAM=2 LOAD BANS FRAME=ETHERNET_ii NAME=FEC_TEAM_EII TEAM=2 ; Bind BANS to the base driver for each adapter and each frame type. ; Bind to the name of the base driver instance (assigned when the ; driver was loaded) and specify the team number. bind BANS FEC_1_E82 TEAM=2 bind BANS FEC_1_EII TEAM=2 bind BANS FEC_2_E82 TEAM=2 bind BANS FEC_2_EII TEAM=2 bind BANS FEC_3_E82 TEAM=2 bind BANS FEC_3_EII TEAM=2 bind BANS FEC_4_E82 TEAM=2 bind BANS FEC_4_EII TEAM=2 ; commit for team 2 LOAD BANS COMMIT MODE=FEC TEAM=2 ; Bind IPX to both frame types and bind IP to ethernet II. BIND IPX FEC_TEAM_E82 NET=202 BIND IPX FEC_TEAM_EII NET=211 BIND IP FEC_TEAM_EII ADDR=128.181.22.1 MASK=255.255.255.0 #XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX # Example 4: 1 Adapter, 4 FrameTypes, 2 802.1q VLANs (Vlan 5 & 6), 2 # Protocols # Now for VLAN... # In order to use BANS.LAN in VLAN mode, the adapter (or adapters) need # to be connected to a "tagged" port (Cisco calls it a trunk port) on # an IEEE 802.1Q compliant switch. # This example uses 802.1Q VLAN which is supported by all new IBM # adapters and most of the older ones. It will use a single 10/100 Ethernet # adapter and be configured for two VLANs, VLAN 5 and VLAN 6. It will # also use all four NetWare frame types and bind both the IPX and IP # protocols. ;load TCPIP.NLM. Must be done before IP is bound. LOAD TCPIP ; load the base driver for each frame type load cibmfe slot=5 frame=ethernet_802.2 name=e82 load cibmfe slot=5 frame=ethernet_802.3 name=e83 load cibmfe slot=5 frame=ethernet_snap name=esp load cibmfe slot=5 frame=ethernet_ii name=eii ; load bans and specify the vlanid for each frame type and each VLAN ; the server is supposed to be part of. On a single team configuration ; "team=1" is optional as that is the default setting. ; First bans is loaded for vlan 5, assigning a name of 5xx to each ; instance. load bans vlanid=5 frame=ethernet_802.2 name=582 team=1 load bans vlanid=5 frame=ethernet_802.3 name=583 team=1 load bans vlanid=5 frame=ethernet_snap name=5sp team=1 load bans vlanid=5 frame=ethernet_ii name=5ii team=1 ; Then bans is loaded for vlan 6, assigning a name of 6xx to each ; instance. load bans vlanid=6 frame=ethernet_802.2 name=682 team=1 load bans vlanid=6 frame=ethernet_802.3 name=683 team=1 load bans vlanid=6 frame=ethernet_snap name=6sp team=1 load bans vlanid=6 frame=ethernet_ii name=6ii team=1 ; After loading bans for all the desired VLANs, bind bans to the base ; driver using the name that was defined when the base drivers were ; originally loaded. bind bans e82 team=1 bind bans e83 team=1 bind bans esp team=1 bind bans eii team=1 ; Now the team can be created with an bans commit command. load bans commit team=1 ; Protocols can be bound to each instance (VLAN and frame type) of ; bans in the same manner as if they were being bound to a physical ; adapter. bind ipx 582 net=502 bind ipx 583 net=503 bind ipx 5sp net=505 bind ipx 5ii net=511 bind ip 5ii addr=192.168.52.1 mask=ff.ff.ff.0 bind ipx 682 net=602 bind ipx 683 net=603 bind ipx 6sp net=605 bind ipx 6ii net=611 bind ip 6ii addr=192.168.62.1 mask=ff.ff.ff.0 #XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX # Example 5: 2 Adapter ALB team, 5 VLANs, 1 Frame Type, 2 Protocols # Teaming and VLAN can be implemented at the same time. The script # gets large quickly so this example will only use one frame type. So # that both IP and IPX can be bound to it, the ethernet_II frame type # will be used instead of Novell's default 802.2. A homogenous team of # 2 load balanced 10/100 Server adapters configured as # members of 5 different VLANs will be used here. ; load TCPIP.NLM. Must be done before IP is bound. LOAD TCPIP ; Load the base drivers for each adapter in the team. LOAD CIBMFE SLOT=1 FRAME=ETHERNET_II NAME=Primary_II LOAD CIBMFE SLOT=2 FRAME=ETHERNET_II NAME=Secondary_II ; Load BANS.LAN with the VLANID keyword once for each VLAN that the ; server is intended to communicate with. Assign a name so that each ; instance can referenced when binding the network protocols. LOAD BANS FRAME=ETHERNET_II VLANID=10 NAME=V10 TEAM=1 LOAD BANS FRAME=ETHERNET_II VLANID=20 NAME=V20 TEAM=1 LOAD BANS FRAME=ETHERNET_II VLANID=30 NAME=V30 TEAM=1 LOAD BANS FRAME=ETHERNET_II VLANID=40 NAME=V40 TEAM=1 LOAD BANS FRAME=ETHERNET_II VLANID=50 NAME=V50 TEAM=1 ; Bind bans to each physical adapter. BIND BANS PRIMARY_II PRIMARY BIND BANS SECONDARY_II ; Create the team in load balancing mode. LOAD BANS COMMIT MODE=ALB ; And bind both IPX and IP to BANS for each VLAN. ;IPX first BIND IPX V10 NET=1011 BIND IPX V20 NET=2011 BIND IPX V30 NET=3011 BIND IPX V40 NET=4011 BIND IPX V50 NET=5011 ;and IP BIND IP V10 ADDR=23.17.10.1 MASK=FF.FF.0.0 BIND IP V20 ADDR=23.17.20.1 MASK=FF.FF.0.0 BIND IP V30 ADDR=23.17.30.1 MASK=FF.FF.0.0 BIND IP V40 ADDR=23.17.40.1 MASK=FF.FF.0.0 BIND IP V50 ADDR=23.17.50.1 MASK=FF.FF.0.0 #XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX