/31’s effect on routing protocols – Round 2

I got a question about whether /31’s would affect routing protocols on other devices, not just the Cisco I tested previously.

Let’s recap the topology I used before.
R2 is going to be a Cisco 3560 and R1 for now is a Juniper SSG5.

Quick configs.
Juniper SSG:

set interface ethernet0/0 ip 10.1.1.2/31
set interface ethernet0/0 route
set interface loopback.1 ip 172.16.1.1/24
set interface loopback.1 route
!
set access-list 10
set access-list 10 permit ip 172.16.1.0/24 10
set route-map name "p" permit 10
set match interface ethernet0/0 loopback.1
set match ip 10
!
set interface ethernet0/0 protocol ospf area 0.0.0.0
set interface ethernet0/0 protocol ospf enable
set interface loopback.1 protocol ospf area 0.0.0.0
set interface loopback.1 protocol ospf enable

Cisco:

interface Loopback0
 ip address 192.168.1.1 255.255.255.0
!
interface FastEthernet0/1
 no switchport
 ip address 10.1.1.3 255.255.255.254
!
router ospf 1
 redistribute connected subnets
 network 10.1.1.3 0.0.0.0 area 0

Are they neighbours?
Juniper SSG:

ssg5-serial-> get interface eth0/0 protocol ospf
VR: trust-vr RouterId: 192.168.2.1
----------------------------------
Interface: ethernet0/0
IpAddr: 10.1.1.2/31, OSPF: enabled, Router: enabled
Type: Broadcast  Area: 0.0.0.0  Priority: 1  Cost: 1  Passive: No
Transit delay: 1s  Retransmit interval: 5s  Hello interval: 10s
Router Dead interval: 40s  Authentication-Type: None
Ignore-MTU: no Reduce-flooding: no
State: Backup Designated Router  DR: 10.1.1.3  BDR: 10.1.1.2(self)
Neighbors:
        RtrId: 10.1.1.3 IpAddr: 10.1.1.3 Pri: 1 State: Full

Cisco:

Switch#sh ip ospf neighbor

Neighbor ID     Pri   State           Dead Time   Address         Interface
192.168.2.1       1   FULL/BDR        00:00:34    10.1.1.2        FastEthernet0/1

Finally, can they see the routes and ping the loopbacks?

Juniper:

ssg5-serial-> get route

IPv4 Dest-Routes for  (0 entries)
--------------------------------------------------------------------------------------
H: Host C: Connected S: Static A: Auto-Exported
I: Imported R: RIP P: Permanent D: Auto-Discovered
N: NHRP
iB: IBGP eB: EBGP O: OSPF E1: OSPF external type 1
E2: OSPF external type 2 trailing B: backup route

IPv4 Dest-Routes for
 (6 entries)
--------------------------------------------------------------------------------------
         ID          IP-Prefix      Interface         Gateway   P Pref    Mtr     Vsys
--------------------------------------------------------------------------------------
*         9        10.1.1.2/32         eth0/0         0.0.0.0   H    0      0     Root
*         8        10.1.1.2/31         eth0/0         0.0.0.0   C    0      0     Root
*         3      172.16.1.0/24     loopback.1         0.0.0.0   C    0      0     Root
*         5     192.168.2.1/32         eth0/5         0.0.0.0   H    0      0     Root
*         4     192.168.2.0/24         eth0/5         0.0.0.0   C    0      0     Root
*        11     192.168.1.0/24         eth0/0        10.1.1.3  E2  200     20     Root

ssg5-serial-> ping 192.168.1.1
Type escape sequence to abort

Sending 5, 100-byte ICMP Echos to 192.168.1.1, timeout is 1 seconds
!!!!!
Success Rate is 100 percent (5/5), round-trip time min/avg/max=2/3/4 ms

Cisco:

Switch#sh ip route

     172.16.0.0/24 is subnetted, 1 subnets
O       172.16.1.0 [110/2] via 10.1.1.2, 00:12:37, FastEthernet0/1
     10.0.0.0/31 is subnetted, 1 subnets
C       10.1.1.2 is directly connected, FastEthernet0/1
C    192.168.1.0/24 is directly connected, Loopback0
Switch#ping 172.16.1.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/9 ms

To be honest, I’m not even going to bother with RIP. I never use it, so what for?

We use Foundry/Brocade routers as well, so how do they hold up?

Foundry config:

[email protected](config-if-e1000-1/6)#ip address 10.1.1.2/31
IP/Port: Errno(9) Cannot assign broadcast address

[email protected](config-if-e1000-1/6)#ip address 10.1.1.3/31
IP/Port: Errno(9) Cannot assign broadcast address

[email protected](config-if-e1000-1/6)#ip address 10.1.1.4/31
IP/Port: Errno(9) Cannot assign broadcast address

The Foundry won’t even allow me to assign the IP address. As a note I’m using fairly recent code:

SL M1: NI-XMR-MR Management Module Active (Serial #: XXXXXXXXX, Part #: XXXXX-XXXX):
Boot     : Version 5.0.0T165 Copyright (c) 1996-2009 Brocade Communications Systems, Inc.
Compiled on Apr 19 2010 at 17:27:10 labeled as xmprm05000

What about JUNOS itself?
Juniper config:

root> show configuration
version 7.1R2.2;
interfaces {
    fxp0 {
        unit 0 {
            family inet {
                address 10.1.1.2/31;
            }
        }
    }
    lo0 {
        unit 0 {
            family inet {
                address 172.16.1.1/32;
            }
        }
    }
}
protocols {
    ospf {
        area 0.0.0.0 {
            interface 10.1.1.2;
            interface 172.16.1.1;
        }
    }
}

Cisco same as the previous examples.

Neighbours?
JUNOS:

root> show ospf neighbor
  Address         Interface             State      ID              Pri  Dead
10.1.1.3         fxp0.0                 Full      192.168.1.1        1   39

Cisco:

Router#sh ip ospf neighbor

Neighbor ID     Pri   State           Dead Time   Address         Interface
172.16.1.1      128   FULL/DR         00:00:38    10.1.1.2        FastEthernet0/1

Routes?
JUNOS:

root> show route

inet.0: 5 destinations, 5 routes (5 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

10.1.1.2/31        *[Direct/0] 00:08:12
                    > via fxp0.0
10.1.1.2/32        *[Local/0] 00:08:12
                      Local via fxp0.0
172.16.1.1/32      *[Direct/0] 00:06:03
                    > via lo0.0
192.168.1.1/32     *[OSPF/10] 00:03:26, metric 2
                    > to 10.1.1.3 via fxp0.0

root> ping 192.168.1.1 count 5
PING 192.168.1.1 (192.168.1.1): 56 data bytes
64 bytes from 192.168.1.1: icmp_seq=0 ttl=255 time=1.250 ms
64 bytes from 192.168.1.1: icmp_seq=1 ttl=255 time=1.273 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=255 time=1.222 ms
64 bytes from 192.168.1.1: icmp_seq=3 ttl=255 time=1.267 ms
64 bytes from 192.168.1.1: icmp_seq=4 ttl=255 time=1.215 ms

--- 192.168.1.1 ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max/stddev = 1.215/1.245/1.273/0.023 ms

Cisco:

Router#sh ip route

Gateway of last resort is not set

     172.16.0.0/32 is subnetted, 1 subnets
O       172.16.1.1 [110/1] via 10.1.1.2, 00:04:18, FastEthernet0/1
     10.0.0.0/31 is subnetted, 1 subnets
C       10.1.1.2 is directly connected, FastEthernet0/1
C    192.168.1.0/24 is directly connected, Loopback0

Router#ping 172.16.1.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms

Most seem to work. I’m a bit upset about the Brocade/Foundry result though!

© 2009-2020 Darren O'Connor All Rights Reserved -- Copyright notice by Blog Copyright