Configuration Examples
This section describes IS-IS for IPv6 configuration examples, including networking requirements, configuration roadmap, and configuration procedure.
Example for Configuring Dynamic IPv6 BFD for IS-IS
This example explains how to configure dynamic IPv6 BFD on an IS-IS IPv6 network to fast detect a fault and notify IS-IS of the fault so that a service traffic switchover can be triggered quickly.
Networking Requirements
As shown in Figure 7-91, IS-IS is run among SwitchS, SwitchD, and SwitchN. Service traffic is forwarded along the primary link SwitchS→SwitchD. The link SwitchS→SwitchN→SwitchD is used as a backup. Customers require that a fault on the primary link be detected in milliseconds so that service traffic can be fast switched to the backup link when the primary link fails.
Configuration Roadmap
The configuration roadmap is as follows:
Configure basic IS-IS IPv6 functions on each switch to ensure IPv6 connectivity.
Set link cost values for IS-IS interfaces on each switch to make the path SwitchS→SwitchD become the primary and the path SwitchS→SwitchN→SwitchD become the backup.
Enable BFD globally on each switch to detect faults on the primary link in milliseconds.
Enable IPv6 BFD for IS-IS in the IS-IS view on each switch so that service traffic can be fast switched to the backup link when the primary link fails.
Procedure
- Enable the IPv6 forwarding capability and configure IPv6 addresses for interfaces.
# Take configurations on SwitchS as an example. The configurations on other switches are similar to these on SwitchS and are not provided here.
<HUAWEI> system-view [~HUAWEI] sysname SwitchS [*HUAWEI] commit [~SwitchS] interface 10ge 1/17/1 [*SwitchS-10GE1/17/1] undo portswitch [*SwitchS-10GE1/17/1] ipv6 enable [*SwitchS-10GE1/17/1] ipv6 address 2001::1 120 [*SwitchS-10GE1/17/1] quit [*SwitchS] interface 10ge 1/17/2 [*SwitchS-10GE1/17/2] undo portswitch [*SwitchS-10GE1/17/2] ipv6 enable [*SwitchS-10GE1/17/2] ipv6 address 2002::1 120 [*SwitchS-10GE1/17/2] commit [~SwitchS-10GE1/17/2] quit
- Configure basic IS-IS IPv6 functions.
# Configure SwitchS.
[~SwitchS] isis 10 [*SwitchS-isis-10] is-level level-2 [*SwitchS-isis-10] network-entity 10.0000.0000.0001.00 [*SwitchS-isis-10] ipv6 enable [*SwitchS-isis-10] quit [*SwitchS] interface 10ge 1/17/1 [*SwitchS-10GE1/17/1] isis ipv6 enable 10 [*SwitchS-10GE1/17/1] quit [*SwitchS] interface 10ge 1/17/2 [*SwitchS-10GE1/17/2] isis ipv6 enable 10 [*SwitchS-10GE1/17/2] commit [~SwitchS-10GE1/17/2] quit
# Configure SwitchN.
[~SwitchN] isis 10 [*SwitchN-isis-10] is-level level-2 [*SwitchN-isis-10] network-entity 10.0000.0000.0002.00 [*SwitchN-isis-10] ipv6 enable [*SwitchN-isis-10] quit [*SwitchN] interface 10ge 1/17/1 [*SwitchN-10GE1/17/1] isis ipv6 enable 10 [*SwitchN-10GE1/17/1] quit [*SwitchN] interface 10ge 1/17/2 [*SwitchN-10GE1/17/2] isis ipv6 enable 10 [*SwitchN-10GE1/17/2] commit [~SwitchN-10GE1/17/2] quit
# Configure SwitchD.
[~SwitchD] isis 10 [*SwitchD-isis-10] is-level level-2 [*SwitchD-isis-10] network-entity 10.0000.0000.0003.00 [*SwitchD-isis-10] ipv6 enable [*SwitchD-isis-10] quit [*SwitchD] interface 10ge 1/17/1 [*SwitchD-10GE1/17/1] isis ipv6 enable 10 [*SwitchD-10GE1/17/1] quit [*SwitchD] interface 10ge 1/17/2 [*SwitchD-10GE1/17/2] isis ipv6 enable 10 [*SwitchD-10GE1/17/2] quit [*SwitchD] interface 10ge 1/17/3 [*SwitchD-10GE1/17/3] isis ipv6 enable 10 [*SwitchD-10GE1/17/3] commit [~SwitchD-10GE1/17/3] quit
# After the configurations are complete, run the display ipv6 routing-table command. You can view that the switches have learnt IPv6 routes from each other.
- Set link cost values for IS-IS interfaces.
# Configure SwitchS.
[~SwitchS] interface 10ge 1/17/1 [~SwitchS-10GE1/17/1] isis cost 1 level-2 [*SwitchS-10GE1/17/1] quit [*SwitchS] interface 10ge 1/17/2 [*SwitchS-10GE1/17/2] isis cost 10 level-2 [*SwitchS-10GE1/17/2] commit [~SwitchS-10GE1/17/2] quit
# Configure SwitchN.
[~SwitchN] interface 10ge 1/17/1 [~SwitchN-10GE1/17/1] isis cost 10 level-2 [*SwitchN-10GE1/17/1] quit [*SwitchN] interface 10ge 1/17/2 [*SwitchN-10GE1/17/2] isis cost 10 level-2 [*SwitchN-10GE1/17/2] commit [~SwitchN-10GE1/17/2] quit
# Configure SwitchD.
[~SwitchD] interface 10ge 1/17/1 [~SwitchD-10GE1/17/1] isis cost 1 level-2 [*SwitchD-10GE1/17/1] quit [*SwitchD] interface 10ge 1/17/2 [*SwitchD-10GE1/17/2] isis cost 10 level-2 [*SwitchD-10GE1/17/2] commit [~SwitchD-10GE1/17/2] quit
- Configure IPv6 BFD for IS-IS.
# Enable IPv6 BFD for IS-IS globally on SwitchS, SwitchN, and SwitchD, and set the minimum intervals for sending and receiving BFD packets to 150 milliseconds and the local detection multiplier to 3.
# Configure SwitchS.
[~SwitchS] bfd [*SwitchS-bfd] quit [*SwitchS] isis 10 [*SwitchS-isis-10] ipv6 enable topology standard [*SwitchS-isis-10] ipv6 bfd all-interfaces enable [*SwitchS-isis-10] ipv6 bfd all-interfaces min-tx-interval 150 min-rx-interval 150 [*SwitchS-isis-10] commit [~SwitchS-isis-10] quit
# Configure SwitchN.
[~SwitchN] bfd [*SwitchN-bfd] quit [*SwitchN] isis 10 [*SwitchN-isis-10] ipv6 enable topology standard [*SwitchN-isis-10] ipv6 bfd all-interfaces enable [*SwitchN-isis-10] ipv6 bfd all-interfaces min-tx-interval 150 min-rx-interval 150 [*SwitchN-isis-10] commit [~SwitchN-isis-10] quit
# Configure SwitchD.
[~SwitchD] bfd [*SwitchD-bfd] quit [*SwitchD] isis 10 [*SwitchD-isis-10] ipv6 enable topology standard [*SwitchD-isis-10] ipv6 bfd all-interfaces enable [*SwitchD-isis-10] ipv6 bfd all-interfaces min-tx-interval 150 min-rx-interval 150 [*SwitchD-isis-10] commit [~SwitchD-isis-10] quit
# After the configurations are complete, run the display isis ipv6 bfd session all command on SwitchS or SwitchD. You can view that IPv6 BFD parameters already take effect. Take the display on SwitchS as an example:
[~SwitchS] display isis ipv6 bfd 10 session all IPv6 BFD session information for ISIS(10) ----------------------------------- Peer System ID : 0000.0000.0003 Type : L2 Interface : 10GE1/17/1 IPv6 BFD State : up TX : 150 RX : 150 Multiplier : 3 LocDis : 16386 Local IPV6 Address: FE80::E0:2F47:B103:1 RemDis : 16386 Peer IPV6 Address : FE80::E0:2F47:B107:1 Diag : No diagnostic information Peer System ID : 0000.0000.0002 Type : L2 Interface : 10GE1/17/2 IPv6 BFD State : up TX : 150 RX : 150 Multiplier : 3 LocDis : 16386 Local IPV6 Address: FE80::C964:0:B203:1 RemDis : 16386 Peer IPV6 Address : FE80::C964:0:B8B6:1 Diag : No diagnostic information Total BFD session(s): 2
- Verify the configuration.
# On SwitchS, run the display ipv6 routing-table 2004::1 120 command to view the IPv6 routing table. You can view that the next hop address of the route to 2004::/120 is FE80::E0:2F47:B107:1 and the outbound interface is 10GE1/17/1.
[~SwitchS] display ipv6 routing-table 2004::1 120 Routing Table : _public_ Summary Count : 1 Destination : 2004:: PrefixLength : 120 NextHop : FE80::E0:2F47:B107:1 Preference : 15 Cost : 11 Protocol : ISIS-L2 RelayNextHop : :: TunnelID : 0x0 Interface : 10GE1/17/1 Flags : D
# Run the shutdown command on 10GE1/17/1 of SwitchD to simulate a primary link fault.
[~SwitchD] interface 10ge 1/17/1 [~SwitchD-10GE1/17/1] shutdown [*SwitchD-10GE1/17/1] commit
# On SwitchS, run the display ipv6 routing-table 2004::1 120 command to view the IPv6 routing table.
[~SwitchS] display ipv6 routing-table 2004::1 120 Routing Table : _public_ Summary Count : 1 Destination : 2004:: PrefixLength : 120 NextHop : FE80::C964:0:B8B6:1 Preference : 15 Cost : 20 Protocol : ISIS-L2 RelayNextHop : :: TunnelID : 0x0 Interface : 10GE1/17/2 Flags : D
In the IPv6 routing table, you can view that the backup link transmits traffic after the primary link fails, the next hop address of the route to 2004::/120 becomes FE80::C964:0:B8B6:1, and the outbound interface becomes 10GE1/17/2.
# Run the display isis ipv6 bfd session all command on SwitchS, and you can view that only one BFD session is established between SwitchS and SwitchN and its status is Up.
[~SwitchS] display isis ipv6 bfd 10 session all IPv6 BFD session information for ISIS(10) ---------------------------------------- Peer System ID : 0000.0000.0002 Type : L2 Interface : 10GE1/17/2 IPv6 BFD State : up TX : 150 RX : 150 Multiplier : 3 LocDis : 16386 Local IPV6 Address: FE80::C964:0:B203:1 RemDis : 16386 Peer IPV6 Address : FE80::C964:0:B8B6:1 Diag : No diagnostic information Total BFD session(s): 1
Configuration Files
Configuration file of the SwitchS
# sysname SwitchS # bfd # isis 10 is-level level-2 network-entity 10.0000.0000.0001.00 # ipv6 enable topology standard ipv6 bfd all-interfaces enable ipv6 bfd all-interfaces min-tx-interval 150 min-rx-interval 150 # # interface 10GE1/17/1 undo portswitch ipv6 enable ipv6 address 2001::1/120 isis ipv6 enable 10 isis cost 1 level-2 # interface 10GE1/17/2 undo portswitch ipv6 enable ipv6 address 2002::1/120 isis ipv6 enable 10 isis cost 10 level-2 # return
Configuration file of the SwitchN
# sysname SwitchN # bfd # isis 10 is-level level-2 network-entity 10.0000.0000.0002.00 # ipv6 enable topology standard ipv6 bfd all-interfaces enable ipv6 bfd all-interfaces min-tx-interval 150 min-rx-interval 150 # # interface 10GE1/17/1 undo portswitch ipv6 enable ipv6 address 2002::2/120 isis ipv6 enable 10 isis cost 10 level-2 # interface 10GE1/17/2 undo portswitch ipv6 enable ipv6 address 2003::1/120 isis ipv6 enable 10 isis cost 10 level-2 # return
Configuration file of SwitchD
# sysname SwitchD # bfd # isis 10 is-level level-2 network-entity 10.0000.0000.0003.00 # ipv6 enable topology standard ipv6 bfd all-interfaces enable ipv6 bfd all-interfaces min-tx-interval 150 min-rx-interval 150 # # interface 10GE1/17/1 undo portswitch ipv6 enable ipv6 address 2001::2/120 isis ipv6 enable 10 isis cost 1 level-2 # interface 10GE1/17/2 undo portswitch ipv6 enable ipv6 address 2003::2/120 isis ipv6 enable 10 isis cost 10 level-2 # interface 10GE1/17/3 undo portswitch ipv6 enable ipv6 address 2004::1/120 isis ipv6 enable 10 # return
Example for Configuring Basic IS-IS IPv6 Functions
Networking Requirements
As shown in Figure 7-92:
Switch A, Switch B, Switch C, and Switch D belong to the same AS. It is required that IS-IS run on them to implement IPv6 interworking.
Switch A, Switch B, and Switch C belong to Area 10, and Switch D belongs to Area 20.
Switch A and Switch B are Level-1 devices; Switch C is a Level-1-2 device; Switch D is a Level-2 device.
Configuration Roadmap
The configuration roadmap is as follows:
Enable the IPv6 forwarding capability on each Switch, and configure an IPv6 address for each interface.
Enable IS-IS, configure the level, and specify the NET on each Switch.
Procedure
- Configure VLANs that interfaces belong to.
<HUAWEI> system-view [~HUAWEI] sysname switchA [*HUAWEI] commit [~switchA] vlan batch 10 [*switchA] interface 10ge 1/17/1 [*switchA-10GE1/17/1] port link-type trunk [*switchA-10GE1/17/1] port trunk allow-pass vlan 10 [*switchA-10GE1/17/1] commit [~switchA-10GE1/17/1] quit
The configurations of SwitchB, SwitchC and SwitchD are similar to the configuration of SwitchA. The detailed configurations are not mentioned here.
- Enable the IPv6 forwarding capability, and configure an
IPv6 address for each interface. Take the display on Switch A as an
example. The configurations of the other three Switches are the same
as that of Switch A, and are not mentioned here.
[~switchA] interface vlanif 10 [~switchA-Vlanif10] ipv6 enable [*switchA-Vlanif10] ipv6 address 10:1::2 64 [*switchA-Vlanif10] commit [~switchA-Vlanif10] quit
- Configure IS-IS.
# Configure switch A.
[~switchA] isis 1
[*switchA-isis-1] is-level level-1
[*switchA-isis-1] network-entity 10.0000.0000.0001.00
[*switchA-isis-1] ipv6 enable
[*switchA-isis-1] quit
[*switchA] interface vlanif 10
[*switchA-Vlanif10] isis ipv6 enable 1
[*switchA-Vlanif10] commit
[~switchA-Vlanif10] quit
# Configure switch B.
[~switchB] isis 1
[*switchB-isis-1] is-level level-1
[*switchB-isis-1] network-entity 10.0000.0000.0002.00
[*switchB-isis-1] ipv6 enable
[*switchB-isis-1] quit
[*switchB] interface vlanif 20
[*switchB-Vlanif20] isis ipv6 enable 1
[*switchB-Vlanif20] commit
[~switchB-Vlanif20] quit
# Configure switch C.
[~switchC] isis 1
[*switchC-isis-1] ipv6 enable
[*switchC-isis-1] network-entity 10.0000.0000.0003.00
[*switchC-isis-1] quit
[*switchC] interface vlanif 10
[*switchC-Vlanif10] isis ipv6 enable 1
[*switchC-Vlanif10] quit
[*switchC] interface vlanif 20
[*switchC-Vlanif20] isis ipv6 enable 1
[*switchC-Vlanif20] quit
[*switchC] interface vlanif 30
[*switchC-Vlanif30] isis ipv6 enable 1
[*switchC-Vlanif30] isis circuit-level level-2
[*switchC-Vlanif30] commit
[~switchC-Vlanif30] quit
# Configure switch D.
[~switchD] isis 1
[*switchD-isis-1] is-level level-2
[*switchD-isis-1] network-entity 20.0000.0000.0001.00
[*switchD-isis-1] ipv6 enable
[*switchD-isis-1] quit
[*switchD] interface vlanif 30
[*switchD-Vlanif30] isis ipv6 enable 1
[*switchD-Vlanif30] quit
[*switchD] interface vlanif 40
[*switchD-Vlanif40] isis ipv6 enable 1
[*switchD-Vlanif40] commit
[~switchD-Vlanif40] quit
- Verify the configuration.
# View the IS-IS routing table of switch A. You can view that switch A has the routes to each network segement of the Level-1 area.
<switchA> display isis route
Route information for ISIS(1)
-----------------------------
ISIS(1) Level-1 Forwarding Table
--------------------------------
IPV6 Dest. ExitInterface NextHop Cost Flags
----------------------------------------------------------------------------------------
::/0 Vlanif10 FE80::A83E:0:3ED2:1 10 A/-/-
10:1::/64 Vlanif10 Direct 10 D/L/-
10:2::/64 Vlanif10 FE80::A83E:0:3ED2:1 20 A/-/-
Flags: D-Direct, A-Added to URT, L-Advertised in LSPs, S-IGP Shortcut, U-Up/Down Bit Set
# View detailed information about IS-IS neighbors on switch C.
<switchC> display isis peer
Peer information for ISIS(1) System Id Interface Circuit Id State HoldTime Type PRI -------------------------------------------------------------------------------- 0000.0000.0001 Vlanif10 0000.0000.0001.01 Up 8s L1 64 0000.0000.0002 Vlanif20 0000.0000.0002.03 Up 8s L1 64 0000.0000.0001 Vlanif30 0000.0000.0003.01 Up 23s L2 64
# View detailed information about the IS-IS LSDB of switch C.
<switchC> display isis lsdb
Database information for ISIS(1) ----------------------------------- Level-1 Link State Database LSPID Seq Num Checksum HoldTime Length ATT/P/OL ------------------------------------------------------------------------------- 0000.0000.0001.00-00 0x00000431 0x3187 1177 86 0/0/0 0000.0000.0001.01-00 0x000004aa 0x79a3 1177 55 0/0/0 0000.0000.0002.00-00 0x00000014 0xdbda 1148 86 0/0/0 0000.0000.0002.03-00 0x00000003 0xcff4 1148 55 0/0/0 0000.0000.0003.00-00* 0x000003ac 0x1a82 1178 143 1/0/0 Total LSP(s): 5 *(In TLV)-Leaking Route, *(By LSPID)-Self LSP, +-Self LSP(Extended), ATT-Attached, P-Partition, OL-Overload Level-2 Link State Database LSPID Seq Num Checksum HoldTime Length ATT/P/OL ------------------------------------------------------------------------------- 0000.0000.0003.00-00* 0x000000a5 0x3487 979 146 0/0/0 0000.0000.0003.01-00* 0x00000003 0x05bc 979 55 0/0/0 0000.0000.0004.00-00 0x00000022 0x0891 1027 116 0/0/0 Total LSP(s): 3 *(In TLV)-Leaking Route, *(By LSPID)-Self LSP, +-Self LSP(Extended), ATT-Attached, P-Partition, OL-Overload
Configuration Files
Configuration file of switch A
sysname switchA
#
vlan batch 10
#
isis 1
is-level level-1
network-entity 10.0000.0000.0001.00
#
ipv6 enable topology standard
#
interface Vlanif10
ipv6 enable
ipv6 address 10:1::2/64
isis ipv6 enable 1
#
interface 10GE1/17/1
port link-type trunk
port trunk allow-pass vlan 10
#
return
Configuration file of switch B
#
sysname switchB
#
vlan batch 20
#
isis 1
is-level level-1
network-entity 10.0000.0000.0002.00
#
ipv6 enable topology standard
#
interface Vlanif20
ipv6 enable
ipv6 address 10:2::2/64
isis ipv6 enable 1
#
interface 10GE1/17/1
port link-type trunk
port trunk allow-pass vlan 20
#
return
Configuration file of switch C
#
sysname switchC
#
vlan batch 10 20 30
#
isis 1
network-entity 10.0000.0000.0003.00
#
ipv6 enable topology standard
#
interface Vlanif10
ipv6 enable
ipv6 address 10:1::1/64
isis ipv6 enable 1
#
interface Vlanif20
ipv6 enable
ipv6 address 10:2::1/64
isis ipv6 enable 1
#
interface Vlanif30
ipv6 enable
ipv6 address 30::1/64
isis ipv6 enable 1
isis circuit-level level-2
#
interface 10GE1/17/1
port link-type trunk
port trunk allow-pass vlan 10
#
interface 10GE1/17/2
port link-type trunk
port trunk allow-pass vlan 20
#
interface 10GE1/17/3
port link-type trunk
port trunk allow-pass vlan 30
#
return
Configuration file of switch D
#
sysname switchD
#
vlan batch 30 40
#
isis 1
is-level level-2
network-entity 20.0000.0000.0001.00
#
ipv6 enable topology standard
#
interface Vlanif30
ipv6 enable
ipv6 address 30::2/64
isis ipv6 enable 1
#
interface Vlanif 40
ipv6 enable
ipv6 address 20::1/64
isis ipv6 enable 1
#
interface 10GE1/17/1
port link-type trunk
port trunk allow-pass vlan 30
#
interface 10GE1/17/2
port link-type trunk
port trunk allow-pass vlan 40
#
return