1. Opening
Route flap dampening was created to protect networks from unstable prefixes repeatedly appearing and disappearing. History showed that aggressive damping can make a real outage last longer by suppressing a route after it has become stable again. Modern use therefore requires calibrated parameters and selective scope.
The recurring design principle in this security block is fail safely without confusing safety with availability. A routing control can prevent a leak and still cause an outage if thresholds, recovery logic or operator assumptions are wrong. The engineer must therefore define both the threat being contained and the service consequence of containment.
2. Concept and standards behavior
RFC 2439 defines the classic penalty/decay/suppress/reuse model. RFC 7196 revisits parameter choices so dampening can be used more safely, and RFC 7454 recommends following those adjusted IETF/RIPE operational recommendations rather than indiscriminate defaults. Cisco IOS XE exposes half-life, reuse, suppress and maximum-suppress controls and can scope dampening with policy.
Protocol behavior, standards recommendations, vendor implementation and local routing policy are deliberately separated. A standards document may define a capability or validation state; the router still needs explicit configuration to decide what operational action follows.
3. Scenario
Transit-A advertises 203.0.113.0/24. A lab script alternately withdraws and re-advertises the prefix. The objective is to observe penalty growth and suppression without applying dampening globally to unrelated stable routes.
Common lab topology
Customer AS65010 ---- Edge-1 ---- Transit-A AS65020
| |
| +---- Transit-B AS65030
|
203.0.113.0/24
Documentation prefixes and private ASNs are used throughout. The topology is intentionally small enough that every prefix and policy decision can be traced manually.
Success criteria
- The protection mechanism detects the intended unsafe condition.
- Normal routes remain reachable during the healthy state.
- The failure action is predictable and documented.
- A negative test proves that an unauthorized route or state is rejected/contained.
- Rollback restores the captured baseline without weakening unrelated controls.
4. Topology diagram
A matching SVG and PNG are stored in media/diagrams/.
5. Prerequisites
- IOS XE 17.18.x documentation baseline.
- Stable eBGP sessions.
- Explicit prefix inventory and expected route counts where applicable.
- Independent management access.
- Logging and time synchronization.
- For RPKI labs: a separate validator/cache is assumed; no private keys or real production ROAs are distributed.
6. Baseline configuration
Topic-specific configuration excerpt — not a complete deployable configuration.
router bgp 65010
address-family ipv4
bgp dampening
exit-address-family
!
! For production, use validated thresholds and selective policy;
! do not assume platform defaults are suitable for every network.
Any command whose exact support differs by platform must be checked against the target image before execution.
7. Verification before modification
show bgp ipv4 unicast summary
show bgp ipv4 unicast
show bgp ipv4 unicast neighbors
show logging
Topic-specific verification may add show bgp ... dampening, RPKI cache/validation output, received-prefix counts or neighbor capability/policy detail. The important question is always: what evidence proves the mechanism is acting on the intended object?
8. Controlled modification
Enable dampening only in the lab and generate a small number of controlled flaps. Record penalty/history state after each event and watch decay after stability returns.
Predict the effect on the BGP session, Loc-RIB, Adj-RIB-In/Out and forwarding state before applying the change.
9. Fault injection
Illustrative lab — not a real incident.
Generate repeated withdraw/announce events until the prefix is suppressed. Then stop flapping. Observe that route usability does not necessarily return immediately when the source becomes stable.
Inject exactly one fault and preserve the pre-fault evidence. Do not change multiple safety controls simultaneously.
10. Step-by-step troubleshooting
- Confirm the affected peer and prefixes.
- Confirm the BGP session state.
- Confirm the expected baseline route count or route set.
- Inspect the configured safety/validation mechanism.
- Determine whether the mechanism changes state, rejects routes, or resets a session.
- Inspect logs/NOTIFICATIONs/validation status.
- Distinguish protocol state from operator policy.
- Verify forwarding separately from BGP-table presence.
- Test the approved positive case.
- Test the forbidden/invalid case.
- Correct the smallest proven cause.
- Re-run the same evidence set and observe stability.
11. Root cause and correction
The route remains damped because accumulated penalty is above the reuse threshold. The correction is not a session reset; it is to allow penalty decay or adjust policy/thresholds according to the approved design after understanding why the instability occurred.
12. Post-fix verification
Verify BGP state, accepted prefix count, selected path, validation/policy state where relevant, forwarding, negative containment and recovery behavior.
13. Rollback
Restore the exact previous safety threshold or policy. Preserve evidence before clearing sessions. If rollback would re-open a known leak path or accept invalid routing data, use an approved temporary containment policy rather than blindly removing the control.
14. Deep-dive engineering notes
Penalty model
A flap increases a penalty. The penalty decays exponentially according to the half-life. Above the suppress threshold the route is suppressed; below the reuse threshold it becomes usable again.
Why aggressive dampening hurt
Path exploration and normal Internet convergence can cause several updates that are not evidence of a persistently faulty origin. Overly aggressive settings can punish reachability after the underlying problem is already fixed.
Selective application
If dampening is used, consider applying it to classes where instability genuinely creates operational harm. Do not suppress critical routes merely because a legacy template enables damping everywhere.
Update churn versus forwarding churn
A route can generate multiple control-plane updates while the actual forwarding outcome changes less frequently. Monitor both update rate and service impact.
First fix the source
Dampening is containment. It does not repair a broken circuit, bad automation loop or unstable route generator. Incident review must identify the source of flaps.
15. Production lessons
- Do not teach route dampening as a universal best practice.
- Use modern parameter guidance and selective scope.
- Preserve penalty/history evidence before clearing state.
- Measure whether suppression improves overall stability or merely hides a fault.
- Fix the source of churn rather than relying on damping indefinitely.
16. Knowledge check
- What failure mode is this control designed to contain?
- What is the service consequence if it triggers incorrectly?
- What evidence proves the control worked without causing unintended collateral damage?
Answers
- The topic-specific leak, instability, invalid-origin or excessive-route condition.
- Depending on the mechanism: route suppression, loss of prefixes, session shutdown or policy rejection.
- Compare logs, route counts/validation state, forwarding and negative tests against the documented baseline.
17. Sources
- RFC 2439 — BGP Route Flap Damping
- RFC 7196 — Making Route Flap Damping Usable
- RFC 7454 — BGP Operations and Security, Section 7
- Cisco IOS XE 17.x — BGP dampening configuration/command guidance
No comments:
Post a Comment