I am trying to solve some problems and I need a little sanity check. I have some routers that only support OSPF and I am trying to integrate this OSPF area/autonomous-system into a level2 IS-IS area/autonomous-system. Simplified, it looks like this:

        IS-IS
         OSPF-------------OSPF
         RTR B             RTR D
       /  |                  \
      /   |                   \
     /    |                    \
IS-IS     |                   OSPF
RTR A     |                   RTR F --static-route 0.0.0.0/0->my ISP
    \     |                    /
     \    |                   /
      \   |                  /
      IS-IS                 /
       OSPF---------------OSPF
       RTR C               RTR E

A couple other things to note:

a. there is no Level 1 IS-IS here, just Level 2.

b.  OSPF is area 0.0.0.0.

c. IS-IS wide metrics only, so no real distinction between internal and external routes with IS-IS.

d. the static route 0.0.0.0/0 pointing to my ISP needs to be propagated into the IS-IS autonomous system, and I want to rely on OSPF costing on the interfaces to traffic engineer the path for the default route, while still allowing for redundancy.

e. to avoid looping in general, I tag routes redistributed from IS-IS into OSPF and then reject routes from OSPF to be redistributed into IS-IS matching that tag. The same logic applies for routes from OSPF to IS-IS.

Here is the first problem:

If I stay with the default Junos route preferences and let's say that one of the ASBRs (Router B or C) goes down and comes back up, I'll get a routing loop for the default route. Since wide-metrics forces IS-IS to forget about the internal/external distinction, the default route gets lost between Routers B and C.

Following the advice of Herrero and Van Der Ven in _Network Mergers and Migrations_, it should be sufficient to prefer OSPF internal AND external routes above IS-IS. For example, I could drop the IS-IS level 2 internal preference from 18 down to something below the default OSPF external route preference of 150 to something like 155. I would need to do this on both routers B and C. This would force the OSPF external route for 0.0.0.0/0 to win over IS-IS at the border routers, B and C.

But here is a second problem:

If I do not have OSPF configured directly between Routers B and C, I could get a suboptimal routing situation. For example, let's say I have a loopback address on router A and the path from A to C is "shorter" than the path from A to B. Router B would then see router A's loopback as best advertised through OSPF via Router D. Ugh.

So perhaps I just need to configure OSPF between B and C. This still isn't the most optimal method, because now that loopback address for A is best reachable from router B through router C, even though A is right next door.

I could just extend OSPF all the way over to router A and clean that up, even though I really am trying to move off OSPF as soon as possible to simplify life, but I guess I can live with it temporarily. I just need to remember to apply the same route preference settings and redistribution routing logic with tags on router A as I have done on routers B and C.

In the future, when I want to replace the OSPF-only routers with routers that support OSPF and IS-IS, I can simply go from router to router and reverse the route preferences for IS-IS and OSPF, making IS-IS better, and then I can remove OSPF altogether.

Anyway, am I on the right track here, or am I forgetting something really important?


Clarke Morledge
College of William and Mary
Information Technology - Network Engineering
Jones Hall (Room 18)
Williamsburg VA 23187

_______________________________________________
juniper-nsp mailing list [email protected]
https://puck.nether.net/mailman/listinfo/juniper-nsp

Reply via email to