Present Location: News >> Blog >> OSPFv3 via SONET w/JUNOS

Blog

> OSPFv3 via SONET w/JUNOS
Posted by prox, from Charlotte, on February 01, 2008 at 18:24 local (server) time

Ran into a weird one today…

I've been toying with a spare Juniper M10i in our lab, lately.  It has a couple Gigabit Ethernet interfaces, as well as two OC-12 SONET PICs.  I assigned each of the SONET interfaces into separate logical routers, along with a couple VLANs off the other Gigabit Ethernet interfaces.  Looping them up, I figured I'd try OSPFv3, just for kicks.

At first, the SONET interfaces didn't pass IPv6 traffic at all.  PPP is the default encapsulation for these interfaces (it should have worked, since JUNOS supposedly supports RFC 2472?), so I had to change it to frame-relay on both, and enable dce on one of the interfaces.

Next problem: OSPFv3 wasn't working.  No neighbors were being formed over the interfaces, but HELLOs were definitely being transmitted and received.  Closer inspection revealed that the link-local addresses for each SONET interface were the same.  Since both of the connected interfaces are on the same box (as I said before, they're just looped up), and SONET has no unique hardware address like Ethernet, they both borrowed the same EUI-64 from another interface on the box.  In this case, the fxp0 management interface.  Here's what it looked like:

prox@purell> show interfaces terse
Interface               Admin Link Proto    Local                 Remote
[...]
so-0/3/0                up    up
so-0/3/0.0              up    up   inet     10.0.0.1/30
                                   inet6    fd00::1/126
                                            fe80::2a0:a5ff:fe5c:7a33/64
                                   mpls
so-1/3/0                up    up
so-1/3/0.0              up    up   inet     10.0.0.2/30
                                   inet6    fd00::2/126
                                            fe80::2a0:a5ff:fe5c:7a33/64
                                   mpls
[...]
lo0.16385               up    up   inet
                                   inet6    fe80::2a0:a5ff:fe5c:7a33
[...]

So, question was: how do you change the link-local address on JUNOS?

Answer is: just create a new one!  It apparently overrides the generated one.  So, I did:

prox@purell> show configuration logical-routers cr0 interfaces so-0/3/0
unit 0 {
    dlci 1;
    family inet {
        address 10.0.0.1/30;
    }
    family inet6 {
        address fd00::1/126;
        address fe80::100/64;
    }
    family mpls;
}

prox@purell> show configuration logical-routers cr1 interfaces so-1/3/0
unit 0 {
    dlci 1;
    family inet {
        address 10.0.0.2/30;
    }
    family inet6 {
        address fd00::2/126;
        address fe80::200/64;
    }
    family mpls;
}

And it works!

prox@purell> show interfaces terse
Interface               Admin Link Proto    Local                 Remote
[...]
so-0/3/0                up    up
so-0/3/0.0              up    up   inet     10.0.0.1/30
                                   inet6    fd00::1/126
                                            fe80::100/64
                                   mpls
so-1/3/0                up    up
so-1/3/0.0              up    up   inet     10.0.0.2/30
                                   inet6    fd00::2/126
                                            fe80::200/64
                                   mpls
[...]

prox@purell> show ospf3 neighbor logical-router cr0
ID               Interface              State     Pri   Dead
10.0.99.3        fe-1/1/0.200           Full      128     31
  Neighbor-address fe80::217:cb00:c872:949e
10.0.99.4        fe-1/1/1.201           Full      128     39
  Neighbor-address fe80::217:cb00:ca72:949d
10.0.99.2        so-0/3/0.0             Full      128     39
  Neighbor-address fe80::200

So, if you ever needed to do that, now you know :)

> Add Comment

New comments are currently disabled for this entry.