10 BGP Synchronization
BGP synchronization is a legacy rule, disabled by default on modern IOS. It is still worth understanding because it explains a class of routing problems and can appear enabled in old configurations or study labs.
The synchronization rule
The rule states: a router must not use or advertise a route learned via iBGP until that same route has also been learned through an IGP.
Concretely, a router cannot install an iBGP-learned route into its routing table, nor advertise it to an eBGP peer, unless that route is also present in the IGP.
Why it existed
Synchronization was designed for the problem of transit routers that did not run BGP.
In the past, an AS could have internal routers running only an IGP, with no BGP awareness. If a border router advertised an iBGP route that these intermediate routers did not know, traffic would reach a router that had no idea how to forward it, creating a black hole.
Synchronization prevented this by forcing BGP to wait until the IGP also carried the route, guaranteeing that the entire internal path knew about it before BGP would use or advertise it.
Why it is legacy and disabled by default
Modern practice is to run iBGP on all transit routers (in a full mesh, or with route reflectors), so no intermediate router is ever “blind” to BGP.
Once every transit router speaks BGP, the synchronization rule becomes unnecessary and even counterproductive, because it delays convergence for no benefit. For this reason, Cisco disabled synchronization by default on modern IOS.
Troubleshooting relevance
Even though it is off by default, synchronization can still be found enabled in old configurations or lab setups. If a valid iBGP route is not being installed and there is no obvious reason, checking whether synchronization is enabled is a classic diagnostic step. This is why it remains relevant material despite being deprecated in practice.
Self-check
Q1 — What does the BGP synchronization rule require?
A) That iBGP routes be advertised immediately to eBGP peers
B) That a router not use or advertise an iBGP-learned route until the IGP also has it
C) That all routers run the same IGP
D) That eBGP and iBGP use the same timers
Respuesta
B is correct. Synchronization blocks using or advertising an iBGP-learned route until that route is also present in the IGP.
- A) False — it delays, not accelerates, advertisement.
- C) False — it is about IGP presence of the route, not IGP uniformity.
- D) False — timers are unrelated to synchronization.
Q2 — What problem was synchronization originally designed to prevent?
A) AS-PATH loops between AS
B) Black holes caused by transit routers that did not run BGP
C) Duplicate Router IDs
D) Next-hop unreachability
Respuesta
B is correct. It protected against black holes when internal transit routers ran only an IGP and were unaware of BGP routes, so traffic could reach a router that could not forward it.
- A) False — inter-AS loops are handled by AS-PATH.
- C) False — Router ID collisions are a separate issue.
- D) False — next-hop reachability is a different problem (next-hop-self).
Q3 — Why is synchronization disabled by default on modern IOS?
A) Because it caused routing loops
B) Because modern designs run BGP on all transit routers, making the rule unnecessary and slow
C) Because it only worked with classful routing
D) Because it required MPLS
Respuesta
B is correct. When every transit router speaks BGP, no router is blind to BGP routes, so the rule is unnecessary and merely delays convergence; Cisco therefore turns it off by default.
- A) False — it prevented black holes; it did not cause loops.
- C) False — it is not tied to classful routing.
- D) False — it does not require MPLS.
Q4 — Why does synchronization still matter for troubleshooting?
A) It is enabled by default and must be turned off
B) It can appear enabled in old configs or labs, and can silently block a valid iBGP route from being installed
C) It changes the best-path algorithm
D) It is required for eBGP multihop
Respuesta
B is correct. Though off by default, it may be enabled in legacy configs or labs; if a valid iBGP route is not installed for no clear reason, checking synchronization is a classic diagnostic step.
- A) False — it is disabled by default on modern IOS.
- C) False — it does not alter best-path ordering.
- D) False — it is unrelated to eBGP multihop.