[quagga-users 13339] ISIS loopback IP Configuration trouble

Ingmar Poese catchall at poenet.org
Tue Jul 23 16:41:06 BST 2013


Hi Quagga Experts,

i am currently trying to setup a sample network for a teaching course 
with Quagga. Specifially, there are 4 routers that are interconnected 
like this:

R1 --- R2 --- R3
  |      |     |
  |-----R4-----|

After setting up the quagga and doing the initial isis configuration, 
the routes of the networks on the links are being pushed fine, and all 
network interfaces on the routers are reachable through the network.
However, the loopback IP addresses are not reachable. This has something 
to do with the fact that ISIS seems to refuse to add them to the 
extended subnet reachability (?).

The question is - how do i get isisd to write the loopback IPs of the 
routers to the routing table of the machine such that they become 
globally available in the entire emulated network

Thanks in advance for any help

For those that like more information:

Router 4 has the following ip address configuration:

r4:/etc/quagga# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue
     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
     inet 127.0.0.1/8 scope host lo
     inet 192.168.2.10/32 scope global lo    *<------ Router Loopback IP*
     inet6 ::1/128 scope host
        valid_lft forever preferred_lft forever
2: teql0: <NOARP> mtu 1500 qdisc noop qlen 100
     link/void
3: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast 
qlen 1000
     link/ether ce:69:66:8d:d1:da brd ff:ff:ff:ff:ff:ff
     inet 10.1.0.6/30 brd 10.1.0.7 scope global eth0
     inet6 fe80::cc69:66ff:fe8d:d1da/64 scope link
        valid_lft forever preferred_lft forever
4: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast 
qlen 1000
     link/ether 16:8d:06:5f:ce:46 brd ff:ff:ff:ff:ff:ff
     inet 10.1.128.2/30 brd 10.1.128.3 scope global eth1
     inet6 fe80::148d:6ff:fe5f:ce46/64 scope link
        valid_lft forever preferred_lft forever
5: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast 
qlen 1000
     link/ether 0a:cb:37:55:b8:fc brd ff:ff:ff:ff:ff:ff
     inet 10.1.0.10/30 brd 10.1.0.11 scope global eth2
     inet6 fe80::8cb:37ff:fe55:b8fc/64 scope link
        valid_lft forever preferred_lft forever
6: eth3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast 
qlen 1000
     link/ether fe:21:0d:f5:fb:cd brd ff:ff:ff:ff:ff:ff
     inet 10.1.128.6/30 brd 10.1.128.7 scope global eth3
     inet6 fe80::fc21:dff:fef5:fbcd/64 scope link
        valid_lft forever preferred_lft forever
7: eth4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast 
qlen 1000
     link/ether 6a:6a:f4:68:e9:2b brd ff:ff:ff:ff:ff:ff
     inet 172.25.0.10/16 brd 172.25.255.255 scope global eth4
     inet6 fe80::686a:f4ff:fe68:e92b/64 scope link
        valid_lft forever preferred_lft forever

The interfaces eth2 and eth4 can be ignored - they are not used by isis 
and are not configured for it. Also, the IP address of the Router 
(192.168.2.10) is assigned to the loopback.
However, when looking at what quagga/isis thinks, it looks like this

r4:/etc/quagga# vtysh -c "show isis interface detail"
Area 1:
   Interface: lo0, State: Config, Active, Circuit Id: 0x0
     Type: Unknown, Level: L2
     Level-2 Information:
       Metric: 10, Active neighbors: 0
       Hello interval: 3, Holddown count: 10 (pad)
       CNSP interval: 10, PSNP interval: 2

   Interface: eth0, State: Up, Active, Circuit Id: 0x83
     Type: lan, Level: L2, SNPA: ce69.668d.d1da
     Level-2 Information:
       Metric: 10, Active neighbors: 1
       Hello interval: 3, Holddown count: 10 (pad)
       CNSP interval: 10, PSNP interval: 2
       LAN Priority: 64, is not DIS
     IP Prefix(es):
       10.1.0.6/30

   Interface: eth1, State: Up, Active, Circuit Id: 0x1
     Type: lan, Level: L2, SNPA: 168d.065f.ce46
     Level-2 Information:
       Metric: 10, Active neighbors: 1
       Hello interval: 3, Holddown count: 10 (pad)
       CNSP interval: 10, PSNP interval: 2
       LAN Priority: 64, is not DIS
     IP Prefix(es):
       10.1.128.2/30

   Interface: eth3, State: Up, Active, Circuit Id: 0x3
     Type: lan, Level: L2, SNPA: fe21.0df5.fbcd
     Level-2 Information:
       Metric: 10, Active neighbors: 1
       Hello interval: 3, Holddown count: 10 (pad)
       CNSP interval: 10, PSNP interval: 2
       LAN Priority: 64, is not DIS
     IP Prefix(es):
       10.1.128.6/30

Most notably, the interface lo0 has no IP prefixes that are being 
carried to the other routers. So the loopback IPs are not advertised via 
that extension. Next, i checked the database if the IPs are being 
treated as loopback IPs:

IS-IS Level-2 link-state database:
LSP ID                  PduLen  SeqNumber   Chksum  Holdtime  ATT/P/OL
r6.00-00                   94   0x00000044  0x6059     615    0/0/0
   Area Address: 49
   NLPID       : 0xCC
   Hostname    : r6
   Router ID   : 192.168.2.9
   IPv4 Address: 192.168.2.9
   Metric      : 10       IS-Extended   : r5.02
   Metric      : 10       IS-Extended   : r6.01
   Metric      : 10       IPv4-Extended : 10.1.0.2/30
   Metric      : 10       IPv4-Extended : 10.1.128.1/30

r6.01-00                   51   0x00000027  0x4eef     538    0/0/0
   Metric      : 0        IS-Extended   : r6.00
   Metric      : 0        IS-Extended   : r8.00

r8.00-00             *    114   0x0000003e  0x5e22     906    0/0/0
   Area Address: 49
   NLPID       : 0xCC
   Hostname    : r8
   Router ID   : 192.168.2.10
   IPv4 Address: 192.168.2.10
   Metric      : 10       IS-Extended   : r5.83
   Metric      : 10       IS-Extended   : r6.01
   Metric      : 10       IS-Extended   : r8.03
   Metric      : 10       IPv4-Extended : 10.1.0.6/30
   Metric      : 10       IPv4-Extended : 10.1.128.2/30
   Metric      : 10       IPv4-Extended : 10.1.128.6/30

r8.03-00             *     51   0x0000001e  0x81b3     872    0/0/0
   Metric      : 0        IS-Extended   : r8.00
   Metric      : 0        IS-Extended   : r7.00

r5.00-00                  121   0x00000006  0xd66b    1099    0/0/0
   Area Address: 49
   NLPID       : 0xCC
   Hostname    : r5
   Router ID   : 192.168.2.11
   IPv4 Address: 192.168.2.11
   Metric      : 10       IS-Extended   : r5.83
   Metric      : 10       IS-Extended   : r7.83
   Metric      : 10       IS-Extended   : r5.02
   Metric      : 10       IPv4-Extended : 10.1.0.5/30
   Metric      : 10       IPv4-Extended : 10.1.0.13/30
   Metric      : 10       IPv4-Extended : 10.1.0.1/30
   Metric      : 10       IPv4-Extended : 172.25.0.0/16

r5.02-00                   51   0x00000004  0x094e    1097    0/0/0
   Metric      : 0        IS-Extended   : r5.00
   Metric      : 0        IS-Extended   : r6.00

r5.83-00                   51   0x00000004  0x0bc3    1120    0/0/0
   Metric      : 0        IS-Extended   : r5.00
   Metric      : 0        IS-Extended   : r8.00

r7.00-00                   94   0x00000030  0x60c1     909    0/0/0
   Area Address: 49
   NLPID       : 0xCC
   Hostname    : r7
   Router ID   : 192.168.2.12
   IPv4 Address: 192.168.2.12
   Metric      : 10       IS-Extended   : r7.83
   Metric      : 10       IS-Extended   : r8.03
   Metric      : 10       IPv4-Extended : 10.1.0.14/30
   Metric      : 10       IPv4-Extended : 10.1.128.5/30

r7.83-00                   51   0x00000004  0x20ab    1046    0/0/0
   Metric      : 0        IS-Extended   : r7.00
   Metric      : 0

And here i see that quagga/isis in fact knows the loopback IP addresses 
(they're clearly transported) - but it seems to fully ignore them when 
writing the routing table for the host.

Finally, the routing table if the host:
r4:/etc/quagga# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use 
Iface
10.1.128.4      0.0.0.0         255.255.255.252 U     0      0        0 eth3
10.1.128.0      0.0.0.0         255.255.255.252 U     0      0        0 eth1
10.1.0.4        0.0.0.0         255.255.255.252 U     0      0        0 eth0
10.1.0.0        10.1.0.5        255.255.255.252 UG    20     0        0 eth0
10.1.0.12       10.1.0.5        255.255.255.252 UG    20     0        0 eth0
172.25.0.0      0.0.0.0         255.255.0.0     U     0      0        0 eth4

And the isisd configuration:

hostname r4
password *************

interface lo0
   ip router isis 1
   isis circuit-type level-2-only
interface eth0
   ip router isis 1
   isis circuit-type level-2-only
interface eth1
   ip router isis 1
   isis circuit-type level-2-only
interface eth3
   ip router isis 1
   isis circuit-type level-2-only
!
router isis 1
   net 49.1921.6800.2010.00
   metric-style wide
!

Any help is greatly appreciated - if need be i can also post the 
configuration of the other hosts or any other information from them.
Thanks !



More information about the Quagga-users mailing list