2

I have two routers (A and B), both are Juniper j2320s. Each one has 3 BGP peers, a primary to one preferred AS (call them AS 1) and two to a secondary (AS 2), as well as an IBGP session between them. A is the preferred route for traffic in/out of the network behind them, comprising a small public IP space.

Recently, the interface for AS 1's BGP session on B started flapping, then after it stopped after a few days, I started having intermittent problems where the servers behind the routers are having problems reaching hosts on the internet with their public IPs as the source address - if I don't specify a source address, it works fine and shows as the configured gateway's IP. If I disable the BGP peering for AS 1 on router B, the problem disappears; when I enable it again then it recurs, but only for specific prefixes, and rarely the same ones from one instance to the next. A traceroute with the source specified stops at router A. I have also tried disabling B's session with AS 2 and leaving 1 up, but the problem still occurs.

My other thought was whether they are just getting too old to handle all the routing table size they need to, but they don't seem unresponsive or heavily loaded, and there are no problems when B's session with AS 1 is disabled.

I have tested this many times, and each time, any network that is affected by this is still directly reachable from A or B. I can perform diagnostics this evening, but not during the day as when the problem is active, it prevents normal usage of some systems in the network.

Edit: I was doing more testing this morning. As soon as I bring the peering up on B, A loses the ability to route.

Before enabling AS 1 on B:

A> traceroute 208.67.220.220 source 2.3.4.5
 1  router1.as1.net (1.2.3.4)  4.526 ms  1.773 ms  1.562 ms
 2. router2.as1.net (1.2.3.5)  4.770 ms  12.540 ms  2.402 ms
...
 7  resolver2.opendns.com (208.67.220.220)  2.862 ms  2.681 ms  4.673 ms

Immediately after:

A> traceroute 208.67.220.220 source 2.3.4.5
traceroute to 208.67.220.220 (208.67.220.220) from 193.19.98.1, 30 hops max, 40 byte packets
 1  * * *
 2  * * *
...
 30 * * *

Configuration:

#router A
protocols {
    bgp {
        group internal {
            type internal;
            description iBGP;
            neighbor h.j.k.m {
                export next-hop-self;
            }
        }
        group as1 {
            type external;
            description as1;
            import default_bgp_import;
            export default_bgp_export;
            peer-as 1;
            neighbor w.x.y.z;
        }
        group as2 {
            type external;
            description as2;
            import default_bgp_import;
            export default_bgp_export;
            peer-as 2;
            neighbor a.b.c.d;
            neighbor a.b.c.e;
        }
    }

#router B
protocols {
    bgp {
        group internal {
            type internal;
            description iBGP;
            neighbor h.j.k.l {
                export next-hop-self;
            }
        }
        inactive: group as1 {
            type external;
            description as1;
            import default_bgp_import;
            export default_bgp_export;
            peer-as 1;
            neighbor w.x.y.v;
        }
        group as2 {
            type external;
            description as2;
            import default_bgp_import;
            export default_bgp_export;
            peer-as 2;
            neighbor a.b.c.f;
            neighbor a.b.c.g;
        }
    }
  • How much memory do you have on those J2320s? Last time I checked two full tables needed 2GB RAM minimum. And I've heard stories of people running them with unsupported 4GB RAM, which propably should be something you need to do with three full tables. For test - try to filter only defaults from all peers, and do local preference to the "active" one. You problems should go away. If that's true, troubleshooting memory utilization with each new BGP table loaded should be your focus. – Łukasz Bromirski Apr 25 '14 at 21:05
  • There is 2GB memory; but there aren't a lot of complex firewall rules or anything else demanding; they are currently running at ~70% usage. – user5416 Apr 28 '14 at 9:57
  • I'm trying to figure this out in my head, can you when you drop BGP sessions check the prefix in a Looking Glass and post them here. Can you also post the local table with the prefix in question (c/w extensive detail) – nzspambot Aug 4 '14 at 0:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.