An introduction to IS-IS – Part 2

In our introduction to IS-IS we set up a basic IS-IS network. The network contained four routers all in the same area (net). All were set up as either level-1 or level-1-2 and connectivity was fine between them. We then switched R3 to be level-2-only and found that R1 (which was level-1) could not see that router, or it’s networks.

In this post we will give R1 visibility to R3, as well as seeing how one area can see another. As it stands R1 can see R2 and R4, but not R3

R1#sh clns neighbors

System Id  Interface   SNPA             State  Holdtime  Type Protocol
R2         Fa0/0       c402.3838.0000   Up     26        L1   IS-IS
R4         Fa0/0       c404.59b0.0000   Up     7         L1   IS-IS
R1#

R2 (and R4) can see R3 though:

R2#sh clns neigh

System Id  Interface   SNPA             State  Holdtime  Type Protocol
R1         Fa0/0       c401.2864.0000   Up     24        L1   IS-IS
R3         Fa0/0       c403.0620.0000   Up     22        L2   IS-IS
R4         Fa0/0       c404.59b0.0000   Up     7         L1L2 IS-IS
R2#

We can add a static route to R1 through R2 and allow it to get to R3:

R1(config)#ip route 0.0.0.0 0.0.0.0 10.200.1.2
R1(config)#exit
R1#sh ip route | beg Gate
Gateway of last resort is 10.200.1.2 to network 0.0.0.0

     1.0.0.0/32 is subnetted, 1 subnets
C       1.1.1.1 is directly connected, Loopback0
     2.0.0.0/24 is subnetted, 1 subnets
i L1    2.2.2.0 [115/20] via 10.200.1.2, FastEthernet0/0
     4.0.0.0/32 is subnetted, 1 subnets
i L1    4.4.4.4 [115/10] via 10.200.1.4, FastEthernet0/0
     10.0.0.0/24 is subnetted, 1 subnets
C       10.200.1.0 is directly connected, FastEthernet0/0
S*   0.0.0.0/0 [1/0] via 10.200.1.2
R1#ping 3.3.3.3

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 3.3.3.3, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 20/54/128 ms
R1#

This works fine, but static routes are not ideal (obviously). So what would happen if we had to connect one area to another. We can find out by removing the static route and configuring R3 to belong to its own area:

R1(config)#no ip route 0.0.0.0 0.0.0.0 10.200.1.2

R3(config)#router isis
R3(config-router)#net 59.0001.030.030.030.030.00
R3(config-router)#exit
R3(config)#exit
R3#sh run | section isis
 ip router isis
 ip router isis
router isis
 net 49.0001.0300.3003.0030.00
 net 59.0001.0300.3003.0030.00
 is-type level-2-only
R3#conf t
R3(config)#router isis
R3(config-router)#no net 49.0001.0300.3003.0030.00
R3(config-router)#exit
R3(config)#exit
R3#

Now if we look again at R1 we can see that it has reachability to 3.3.3.3, and it also has additional entries in it’s routing table:

R1#ping 3.3.3.3

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 3.3.3.3, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 20/54/164 ms
R1#sh ip route | beg Gate
Gateway of last resort is 10.200.1.4 to network 0.0.0.0

     1.0.0.0/32 is subnetted, 1 subnets
C       1.1.1.1 is directly connected, Loopback0
     2.0.0.0/24 is subnetted, 1 subnets
i L1    2.2.2.0 [115/20] via 10.200.1.2, FastEthernet0/0
     4.0.0.0/32 is subnetted, 1 subnets
i L1    4.4.4.4 [115/10] via 10.200.1.4, FastEthernet0/0
     10.0.0.0/24 is subnetted, 1 subnets
C       10.200.1.0 is directly connected, FastEthernet0/0
i*L1 0.0.0.0/0 [115/10] via 10.200.1.4, FastEthernet0/0
               [115/10] via 10.200.1.2, FastEthernet0/0
R1#

What has happened is that but R2 and R4 have injected a route into R1’s routing table. R2 and R4 are able to form adjacencies with R3:

R4#sh clns neigh

System Id  Interface   SNPA             State  Holdtime  Type Protocol
R1         Fa0/0       c401.2864.0000   Up     22        L1   IS-IS
R2         Fa0/0       c402.3838.0000   Up     18        L1L2 IS-IS
R3         Fa0/0       c403.0620.0000   Up     18        L2   IS-IS
R4#

R2#sh clns neigh

System Id  Interface   SNPA             State  Holdtime  Type Protocol
R1         Fa0/0       c401.2864.0000   Up     25        L1   IS-IS
R3         Fa0/0       c403.0620.0000   Up     24        L2   IS-IS
R4         Fa0/0       c404.59b0.0000   Up     9         L1L2 IS-IS
R2#

In turn they have passed default routes to R1. This is done through the ATT bit (meaning Attached) – this is set to 1 by R2 and R4 which, when advertised to R1, tells R1 to install a default route through them to reach other networks:

R1#sh isis database

IS-IS Level-1 Link State Database:
LSPID            LSP Seq Num  LSP Checksum  LSP Holdtime   ATT/P/OL
R1.00-00       * 0x00000003   0xE615        591            0/0/0
R2.00-00         0x00000005   0xAA12        795            1/0/0
R4.00-00         0x00000004   0x0768        795            1/0/0
R4.01-00         0x00000003   0xC28D        1083           0/0/0
R1#

In the nest post we will look at IS-IS administrative distances, and maybe some redistribution.