Solving IPv4 Exhaustion: Building an MP-BGP Dual-Stack IPv6 Carrier Core
How we migrated a Tier-3 ISP core network to MP-BGP Dual-Stack IPv6, allocating /48 enterprise subnets and managing dual-stack routing tables.
βRunning dual-stack networking is easy until your IPv4 and IPv6 BGP neighbor topologies diverge during an upstream fiber failover.β
The Setup
In August 2012 at Net4 India, APNIC announced the final stage of IPv4 address allocation depletion in the Asia-Pacific region. As a Tier-3 ISP and hosting provider, we needed to ensure all new client allocations could operate over native IPv6 without losing IPv4 connectivity.
We initiated an enterprise-wide migration to Multiprotocol BGP (MP-BGP) Dual-Stack across our core routers, edge firewalls, and DNS infrastructure.
The Mess
Our initial deployment enabled IPv6 unicast address families alongside IPv4 on existing BGP sessions. However, during a scheduled maintenance window on a primary upstream carrier, IPv6 traffic dropped completely while IPv4 remained online:
[CRITICAL] 2012-08-15 02:14:10 - Cisco 7606 Core Router Log
%BGP-5-ADJCHANGE: neighbor 2001:db8:ffff::1 Down - Interface flap
%BGP-3-NOTIFICATION: sent to neighbor 2001:db8:ffff::1 3/1 (update message error - subcode 9: malformed attribute)
Status: IPv4 BGP Peering (202.54.1.1) UP | IPv6 BGP Peering (2001:db8:ffff::1) DOWN
The issue stemmed from an uncoordinated BGP Capability Negotiation mismatch: the upstream carrier router did not support extended next-hop encoding for IPv6 routes over IPv4 TCP sessions.
IPv6 routes were advertised with IPv4 next-hop addresses, causing BGP route withdrawal loops that blackholed all client IPv6 traffic.
The Solution
I completely separated IPv4 and IPv6 BGP peering topologies using explicit MP-BGP address family configurations and dedicated IPv6 transport peering sessions:
- Dedicated IPv6 BGP Transport: Configured separate BGP sessions over native IPv6 link-local and global unicast addresses.
- Strict Address-Family Isolation: Isolated
address-family ipv4 unicastandaddress-family ipv6 unicastroute-maps. - Enterprise /48 Subnet Allocation: Automated /48 IPv6 prefix delegation for enterprise hosting clients using DHCPv6-PD.
! Cisco 7606 MP-BGP Dual-Stack Configuration
router bgp 45120
bgp router-id 202.54.1.1
!
neighbor 2001:db8:ffff::1 remote-as 174
neighbor 2001:db8:ffff::1 update-source GigabitEthernet3/0
!
address-family ipv6 unicast
neighbor 2001:db8:ffff::1 activate
neighbor 2001:db8:ffff::1 route-map IPV6_IN in
neighbor 2001:db8:ffff::1 route-map IPV6_OUT out
network 2001:db8:1000::/48
exit-address-family
Key Takeaway
Always isolate IPv4 and IPv6 BGP address families onto native transport sessions. Never rely on IPv4 BGP sessions to carry IPv6 routes without verifying extended next-hop encoding support across all upstream peers.
Architecture and decisions: mine. Debugging sessions at odd hours: mine. AI assistance: structure, syntax, first draft. β Sachin
Sachin Kumar Sharma
Associate Director (Infrastructure & Cloud Architecture Strategy) | 20+ Yrs Exp
Architecting resilient multi-cloud enterprise landing zones, SDN overlay fabrics, DevSecFinOps automation pipelines, and autonomous Agentic AI platforms.
π‘ Related Engineering Articles
IPv6 Transition Strategies: Dual-Stack Coexistence with A10 Networks ADC NAT-PT
How we implemented A10 Thunder ADC NAT-PT (Protocol Translation) to allow legacy IPv4-only enterprise application servers to communicate with IPv6 client subnets.
Connecting Legacy IPv4 Services to Pure IPv6 Clients with NAT64 & DNS64
How we implemented NAT64 and DNS64 prefix synthesis to allow IPv6-only mobile devices to access legacy IPv4-only enterprise application servers.
The Seven Failure Modes of Autonomous AI Agent Systems (And How to Fix Them)
An architectural post-mortem analyzing the top 7 failure modes in autonomous AI subagent fleets and the exact engineering guardrails built to prevent them.
π¬ Stay Updated on Tech Releases
Sign up to get notified when I publish new production war stories, agentic AI architecture blueprints, or open-source infrastructure tools.