Skip to content

ABHAVTECH IPv6 MIGRATION — WEEK 1

PLANNING, ADDRESSING ASSIGNMENT, AND TOOLING PREPARATION

Project: ABV-IPV6-2025
Week: 1 of 44
Duration: 5 Days
Objective: Complete IPv6 addressing design, ARIN allocation, IPAM setup, lab validation, tooling preparation
Prerequisites: IPv6 Migration Master Reference Card reviewed and approved


WEEK 1 OVERVIEW

WEEK 1 DELIVERABLES:
┌────────────────────────────────────────────────────────────────────┐
│                                                                    │
│  Day 1: IPv6 Prefix Planning + ARIN Allocation Request            │
│    ✅ Calculate required IPv6 space                               │
│    ✅ Submit ARIN request for /44 or /40                          │
│    ✅ Document addressing hierarchy                               │
│                                                                    │
│  Day 2: IPAM Configuration + Addressing Spreadsheet                │
│    ✅ Configure DNAC IPAM for IPv6                                │
│    ✅ Create master IPv6 allocation spreadsheet                   │
│    ✅ Assign prefixes to all 19 sites                             │
│                                                                    │
│  Day 3: Lab Environment Setup + Testing                            │
│    ✅ Deploy lab topology (CML or DevNet sandbox)                 │
│    ✅ Test dual-stack configs on lab devices                      │
│    ✅ Validate LISP/VXLAN IPv6 overlay                            │
│                                                                    │
│  Day 4: Production Tooling Preparation                             │
│    ✅ DNAC: Enable IPv6, create pools                             │
│    ✅ ISE: Add IPv6 device IPs, update policies                   │
│    ✅ vManage: Prepare IPv6 feature templates                     │
│    ✅ Monitoring: ThousandEyes/Splunk IPv6 readiness              │
│                                                                    │
│  Day 5: Readiness Assessment + Go/No-Go Decision                   │
│    ✅ Infrastructure readiness checklist (100% complete)          │
│    ✅ Stakeholder sign-off                                        │
│    ✅ Phase 1 kickoff meeting scheduled                           │
│                                                                    │
└────────────────────────────────────────────────────────────────────┘

DAY 1: IPv6 PREFIX PLANNING AND ARIN ALLOCATION

1.1 Calculate IPv6 Space Requirements

Current Abhavtech Infrastructure Inventory

SITE INVENTORY (19 sites):
┌────────────────────────────────────────────────────────────────────┐
│ Region    │ Site Name    │ Site ID │ Device Count │ User Count    │
├────────────────────────────────────────────────────────────────────┤
│ APAC      │ Mumbai HQ    │ 1       │ 200          │ 5,000         │
│ APAC      │ Chennai HQ   │ 2       │ 120          │ 2,500         │
│ APAC      │ Bangalore    │ 50      │ 15           │ 500           │
│ APAC      │ Delhi        │ 51      │ 15           │ 500           │
│ APAC      │ Noida        │ 55      │ 8            │ 200           │
│ APAC      │ Hyderabad    │ 52      │ 8            │ 200           │
│ APAC      │ Pune         │ 53      │ 8            │ 200           │
│ APAC      │ Ahmedabad    │ 54      │ 8            │ 200           │
│ APAC      │ Kolkata      │ 56      │ 8            │ 150           │
│ APAC      │ Jaipur       │ 57      │ 8            │ 150           │
│ APAC      │ Surat        │ 58      │ 8            │ 150           │
│ APAC      │ Nagpur       │ 59      │ 8            │ 150           │
│ APAC      │ Chandigarh   │ 60      │ 8            │ 150           │
│ APAC      │ Coimbatore   │ 61      │ 8            │ 150           │
│ APAC      │ Lucknow      │ 62      │ 8            │ 150           │
│ EMEA      │ London HQ    │ 16      │ 100          │ 2,000         │
│ EMEA      │ Frankfurt    │ 17      │ 50           │ 800           │
│ Americas  │ New Jersey   │ 32      │ 80           │ 1,500         │
│ Americas  │ Dallas       │ 33      │ 40           │ 600           │
├────────────────────────────────────────────────────────────────────┤
│ TOTAL     │ 19 sites     │ —       │ 708 devices  │ 15,150 users  │
└────────────────────────────────────────────────────────────────────┘

NETWORK SEGMENTS PER SITE (Hub sites like Mumbai):
  - Underlay: Loopbacks (60 devices max), P2P links (100 links max)
  - Management: Device OOB, monitoring agents
  - Overlay (5 VNs × 10 VLANs/floors average = 50 subnets per hub)
  - Cloud: Azure VNets, GCP VPCs
  - Future IoT: 5,000 devices projected (2026-2028)

TOTAL IPv6 SUBNETS REQUIRED:
  Sites: 19 sites × 60 subnets avg = 1,140 /64 subnets
  Cloud: 200 /64 subnets (Azure/GCP growth)
  IoT: 500 /64 subnets (future expansion)
  Reserved: 50% overhead for growth

  TOTAL = ~3,000 /64 subnets = needs /44 minimum (16 × /48 sites)

IPv6 Prefix Size Decision

OPTION A: /44 from ARIN (Recommended)
  - Provides: 16 × /48 blocks
  - Allocation: 19 sites + cloud + IoT + 30% reserved = fits
  - Cost: ~$2,250 initial + $750/year (ARIN fee)
  - Justification: "Multi-site enterprise with 19 locations + cloud"

OPTION B: /40 from ARIN (Aggressive)
  - Provides: 256 × /48 blocks
  - Allocation: Massive overhead (only need 25 blocks)
  - Cost: ~$4,500 initial + $2,000/year
  - Justification: Harder to justify to ARIN without 100+ sites

DECISION: Request /44 from ARIN
  Prefix example (will be assigned): 2001:0db8:abc0::/44
  Note: 2001:db8::/32 is documentation-only; replace with actual ARIN assignment

1.2 ARIN IPv6 Allocation Request

ARIN Account Setup

# Step 1: Create ARIN Online account (if not exists)
# Navigate to: https://www.arin.net/account/login/
# Organization: Abhavtech Networks Private Limited
# Contact: Network Operations (NOC)

# Step 2: Verify organization details
# ARIN → My Account → Organization Details
# Organization Name: Abhavtech Networks
# Organization ID: (assign after verification, e.g., ABHAV-01)
# POC Admin: Raj Kumar (example)
# POC Technical: Network Team
# Address: (corporate HQ address)

IPv6 Request Template

ARIN IPv6 REQUEST FORM:
─────────────────────────────────────────────────────────────────────

1. REQUEST TYPE:
   ☑ Initial IPv6 allocation
   ☐ Additional IPv6 allocation

2. REQUESTED PREFIX SIZE:
   /44 (minimum requirement)

3. JUSTIFICATION (detailed):

   Organization: Abhavtech Networks Private Limited
   Business: Financial services technology provider

   CURRENT INFRASTRUCTURE:
   - 19 production sites (6 hub + 13 branch)
   - 15,000+ endpoints (users + devices)
   - Multi-region presence: APAC (15 sites), EMEA (2), Americas (2)

   IPv6 DEPLOYMENT PLAN:
   - Phase 1 (Q1 2025): SD-WAN underlay dual-stack (19 sites)
   - Phase 2 (Q2 2025): SD-Access overlay dual-stack (5 VNs × 19 sites)
   - Phase 3 (Q2-Q3 2025): Multi-cloud IPv6 (Azure ExpressRoute, GCP Interconnect)
   - Phase 4 (Q3 2025): IoT expansion (5,000 devices projected by 2028)

   ADDRESSING PLAN:
   - Per-site allocation: /48 per site (19 sites = 19 × /48)
   - Cloud allocation: /48 for Azure VNets + /48 for GCP VPCs
   - IoT/Edge allocation: /48 for future 5G/LTE private network
   - Management/Tools: /48 for monitoring infrastructure (DNAC, ISE, Splunk, ThousandEyes)
   - Reserved: /48 blocks for future growth

   TOTAL REQUIREMENT: 25 × /48 blocks = /44 minimum

   MULTIHOMING:
   - Provider 1: Tata Communications (MPLS)
   - Provider 2: BT Global (Internet DIA)
   - Provider 3: AT&T (Americas MPLS)
   - Reason: Provider-independent space required for BGP multihoming

4. ROUTING POLICY:
   Will announce via BGP to:
   - AS64512 (Tata - APAC)
   - AS64513 (BT - EMEA)
   - AS64514 (AT&T - Americas)

5. SUBNETTING PLAN:
   See attached: Abhavtech_IPv6_Addressing_Plan.xlsx

6. TIMELINE:
   Production deployment: Q1 2025 (within 90 days of allocation)

7. CONTACT INFORMATION:
   Technical POC: [Raj Kumar]
   Email: [noc@abhavtech.com]
   Phone: [+91-xxx-xxx-xxxx]

─────────────────────────────────────────────────────────────────────
SUBMIT VIA: https://www.arin.net/resources/request/ipv6/
EXPECTED APPROVAL TIME: 2-4 weeks

ARIN Processing Checklist

☐ Week 1 Day 1: Submit ARIN request
☐ Week 1-2: ARIN review (may request clarifications)
☐ Week 2-3: ARIN approval + prefix assignment notification
☐ Week 3: Receive official allocation (e.g., 2001:0db8:abc0::/44)
☐ Week 3: Update ARIN RPKI (Resource Public Key Infrastructure)
☐ Week 3: Register reverse DNS delegation (e.g., 0.c.b.a.8.b.d.0.1.0.0.2.ip6.arpa)

NOTE: While waiting for ARIN, continue Week 1 with placeholder prefix 2001:db8:abc0::/44

1.3 Hierarchical Addressing Design

Regional Allocation

ABHAVTECH IPv6 HIERARCHY (using 2001:db8:abc0::/44 as example):
┌────────────────────────────────────────────────────────────────────┐
│                                                                    │
│  GLOBAL PREFIX: 2001:db8:abc0::/44                                │
│                                                                    │
│  ├─ APAC Region:     2001:db8:abc1::/48 to 2001:db8:abcA::/48     │
│  │    (10 × /48 blocks for 15 APAC sites + growth)                │
│  │                                                                 │
│  ├─ EMEA Region:     2001:db8:abcB::/48 to 2001:db8:abcC::/48     │
│  │    (2 × /48 blocks for 2 EMEA sites)                           │
│  │                                                                 │
│  ├─ Americas Region: 2001:db8:abcD::/48 to 2001:db8:abcE::/48     │
│  │    (2 × /48 blocks for 2 Americas sites)                       │
│  │                                                                 │
│  └─ Special Use:     2001:db8:abcF::/48                           │
│       ├─ :0::/52 → Cloud (Azure/GCP)                              │
│       ├─ :1000::/52 → IoT/Edge                                    │
│       ├─ :2000::/52 → Management tools (DNAC, ISE, Splunk)        │
│       └─ :F000::/52 → Future reserved                             │
│                                                                    │
└────────────────────────────────────────────────────────────────────┘

Per-Site Allocation (Mumbai Hub Example)

MUMBAI HUB: 2001:db8:abc1::/48
─────────────────────────────────────────────────────────────────────

STRUCTURE: 2001:db8:abc1:FFFF:SSSS::/64
                      │    │
                      │    └─ Subnet ID (0-FFFF = 65,536 subnets per site)
                      └────── Function nibble (see below)

FUNCTION NIBBLES (F):
  0xxx = Underlay (loopbacks, P2P)
  1xxx = Management (OOB, monitoring)
  2xxx = VN_CORPORATE overlay
  3xxx = VN_GUEST overlay
  4xxx = VN_IOT overlay
  5xxx = VN_SERVERS overlay
  6xxx = VN_VOICE overlay
  8xxx = SD-WAN service VPNs
  Fxxx = Reserved

DETAILED ALLOCATION:
┌────────────────────────────────────────────────────────────────────┐
│ Function          │ Prefix                      │ Usage            │
├────────────────────────────────────────────────────────────────────┤
│ UNDERLAY          │ 2001:db8:abc1:0::/52        │ 4,096 subnets    │
│   Loopbacks       │ 2001:db8:abc1:0::/64        │ Border, CP, Edge │
│   P2P Links       │ 2001:db8:abc1:1::/64        │ IS-IS underlay   │
│                   │                             │                  │
│ MANAGEMENT        │ 2001:db8:abc1:1000::/52     │ 4,096 subnets    │
│   Device Mgmt     │ 2001:db8:abc1:1000::/64     │ SSH, SNMP        │
│   Monitoring      │ 2001:db8:abc1:1001::/64     │ TE agent, Splunk │
│   WLC Mgmt        │ 2001:db8:abc1:1002::/64     │ WLC-MUM-01/02    │
│                   │                             │                  │
│ VN_CORPORATE      │ 2001:db8:abc1:2000::/52     │ 4,096 subnets    │
│   Floor 1         │ 2001:db8:abc1:2001::/64     │ VLAN 1011        │
│   Floor 2         │ 2001:db8:abc1:2002::/64     │ VLAN 1012        │
│   Floor 3         │ 2001:db8:abc1:2003::/64     │ VLAN 1013        │
│   Floor 4         │ 2001:db8:abc1:2004::/64     │ VLAN 1014        │
│   Floor 5         │ 2001:db8:abc1:2005::/64     │ VLAN 1015        │
│   Floor 6         │ 2001:db8:abc1:2006::/64     │ VLAN 1016        │
│   Wireless-Corp   │ 2001:db8:abc1:2100::/64     │ WiFi SSID        │
│                   │                             │                  │
│ VN_GUEST          │ 2001:db8:abc1:3000::/52     │ 4,096 subnets    │
│   Guest Floor 1   │ 2001:db8:abc1:3001::/64     │ VLAN 1021        │
│   Wireless-Guest  │ 2001:db8:abc1:3100::/64     │ WiFi SSID        │
│                   │                             │                  │
│ VN_IOT            │ 2001:db8:abc1:4000::/52     │ 4,096 subnets    │
│   IoT Floor 1     │ 2001:db8:abc1:4001::/64     │ VLAN 1031        │
│   IoT Wireless    │ 2001:db8:abc1:4100::/64     │ WiFi SSID        │
│                   │                             │                  │
│ VN_SERVERS        │ 2001:db8:abc1:5000::/52     │ 4,096 subnets    │
│   DMZ Servers     │ 2001:db8:abc1:5001::/64     │ Web, App         │
│   DB Servers      │ 2001:db8:abc1:5002::/64     │ SQL, Oracle      │
│                   │                             │                  │
│ VN_VOICE          │ 2001:db8:abc1:6000::/52     │ 4,096 subnets    │
│   Voice Floor 1   │ 2001:db8:abc1:6001::/64     │ VLAN 1051        │
│   Wireless-Voice  │ 2001:db8:abc1:6100::/64     │ WiFi SSID        │
│                   │                             │                  │
│ SD-WAN VPNs       │ 2001:db8:abc1:8000::/52     │ 4,096 subnets    │
│   VPN 0 (WAN)     │ 2001:db8:abc1:8000::/64     │ Transport        │
│   VPN 1 (Corp)    │ 2001:db8:abc1:8001::/64     │ Overlay          │
│   VPN 512 (Mgmt)  │ 2001:db8:abc1:8512::/64     │ OOB SD-WAN       │
└────────────────────────────────────────────────────────────────────┘

DAY 2: IPAM CONFIGURATION AND ADDRESSING SPREADSHEET

2.1 Catalyst Center (DNAC) IPAM Setup

Enable IPv6 in DNAC

# Step 1: SSH to DNAC primary node (NJ)
ssh -l maglev-admin 10.252.10.10

# Step 2: Enable IPv6 at system level (if not already enabled)
maglev-admin@dnac:~$ sudo systemctl status ipv6.service
# Expected: active

# Step 3: Configure DNAC IPv6 management address
maglev-admin@dnac:~$ sudo maglev-config
  Select: 6. Network Settings
  Select: 2. Add IPv6 Address
  IPv6 Address: 2001:db8:abc1:1000::10
  Prefix Length: 64
  Gateway: 2001:db8:abc1:1000::1

# Step 4: Verify DNAC reachable via IPv6
ping6 2001:db8:abc1:1000::10
# Expected: replies

Create IPv6 Global Settings in DNAC UI

DNAC UI → Design → Network Settings → Network

1. Add IPv6 DNS Servers:
   Primary:   2001:4860:4860::8888  (Google DNS IPv6)
   Secondary: 2001:4860:4860::8844
   Internal:  2001:db8:abc1:1000::53  (future internal DNS)

2. Add IPv6 NTP Servers:
   Primary:   2001:db8:abc1:1000::123  (internal NTP)
   Fallback:  2620:0:ccc::2  (NIST IPv6 NTP)

3. Add IPv6 Syslog:
   Server: 2001:db8:abc1:1001::50  (Splunk indexer)
   Port: 514
   Protocol: UDP

4. SNMP v3 (dual-stack — same config for IPv4/IPv6)
   No changes needed — SNMP works over both transports

2.2 Master IPv6 Allocation Spreadsheet

Spreadsheet Structure

FILE: Abhavtech_IPv6_Addressing_Plan.xlsx

SHEET 1: Site Summary
┌──────────────┬───────────────┬──────────────────────────┬─────────────┐
│ Site Name    │ Site ID │ IPv4 Mgmt          │ IPv6 /48 Block         │
├──────────────┼───────────────┼──────────────────────────┼─────────────┤
│ Mumbai HQ    │ 1       │ 10.252.100.0/24    │ 2001:db8:abc1::/48     │
│ Chennai HQ   │ 2       │ 10.252.101.0/24    │ 2001:db8:abc2::/48     │
│ Bangalore    │ 50      │ 10.252.150.0/24    │ 2001:db8:abc3::/48     │
│ Delhi        │ 51      │ 10.252.151.0/24    │ 2001:db8:abc4::/48     │
│ Noida        │ 55      │ 10.252.155.0/24    │ 2001:db8:abc5::/48     │
│ Hyderabad    │ 52      │ 10.252.152.0/24    │ 2001:db8:abc6::/48     │
│ Pune         │ 53      │ 10.252.153.0/24    │ 2001:db8:abc7::/48     │
│ Ahmedabad    │ 54      │ 10.252.154.0/24    │ 2001:db8:abc8::/48     │
│ Kolkata      │ 56      │ 10.252.156.0/24    │ 2001:db8:abc9::/48     │
│ Jaipur       │ 57      │ 10.252.157.0/24    │ 2001:db8:abca::/48     │
│ London HQ    │ 16      │ 10.252.116.0/24    │ 2001:db8:abcb::/48     │
│ Frankfurt    │ 17      │ 10.252.117.0/24    │ 2001:db8:abcc::/48     │
│ New Jersey   │ 32      │ 10.252.132.0/24    │ 2001:db8:abcd::/48     │
│ Dallas       │ 33      │ 10.252.133.0/24    │ 2001:db8:abce::/48     │
│ ... (more)   │ ...     │ ...                │ ...                    │
└──────────────┴───────────────┴──────────────────────────┴─────────────┘

SHEET 2: Mumbai Detail (Example)
┌───────────────┬──────────────────────────┬─────────┬──────────────────┐
│ Function      │ IPv6 Prefix              │ VLAN ID │ IPv4 Equivalent  │
├───────────────┼──────────────────────────┼─────────┼──────────────────┤
│ Loopback0     │ 2001:db8:abc1:0::1/128   │ N/A     │ 10.250.1.1/32    │
│ P2P Link 1    │ 2001:db8:abc1:1::0/127   │ N/A     │ 10.251.1.0/31    │
│ Device Mgmt   │ 2001:db8:abc1:1000::/64  │ 999     │ 10.252.100.0/24  │
│ Corp Floor 1  │ 2001:db8:abc1:2001::/64  │ 1011    │ 10.100.1.0/24    │
│ Corp Floor 2  │ 2001:db8:abc1:2002::/64  │ 1012    │ 10.100.2.0/24    │
│ Guest Floor 1 │ 2001:db8:abc1:3001::/64  │ 1021    │ 10.200.1.0/24    │
│ IoT Floor 1   │ 2001:db8:abc1:4001::/64  │ 1031    │ 10.150.1.0/24    │
│ Servers DMZ   │ 2001:db8:abc1:5001::/64  │ 1041    │ 10.180.1.0/24    │
│ Voice Floor 1 │ 2001:db8:abc1:6001::/64  │ 1051    │ 10.190.1.0/24    │
│ VPN 0 WAN     │ 2001:db8:abc1:8000::/64  │ N/A     │ VPN 0            │
│ VPN 1 Corp    │ 2001:db8:abc1:8001::/64  │ N/A     │ VPN 1            │
└───────────────┴──────────────────────────┴─────────┴──────────────────┘

SHEET 3: Device Inventory (IPv6 addresses)
┌────────────────────┬────────────────────────┬──────────────────────────┐
│ Device Hostname    │ IPv4 Mgmt              │ IPv6 Mgmt                │
├────────────────────┼────────────────────────┼──────────────────────────┤
│ MUM-BN-01          │ 10.250.1.1             │ 2001:db8:abc1:0::1       │
│ MUM-BN-02          │ 10.250.1.2             │ 2001:db8:abc1:0::2       │
│ MUM-CP-01          │ 10.250.1.3             │ 2001:db8:abc1:0::3       │
│ MUM-CP-02          │ 10.250.1.4             │ 2001:db8:abc1:0::4       │
│ MUM-ED-01          │ 10.250.1.10            │ 2001:db8:abc1:0::10      │
│ MUM-ED-02          │ 10.250.1.11            │ 2001:db8:abc1:0::11      │
│ ... (all 708)      │ ...                    │ ...                      │
│ MUM-HUB-01 (SDWAN) │ 10.252.1.1             │ 2001:db8:abc1:8000::1    │
│ MUM-HUB-02 (SDWAN) │ 10.252.1.2             │ 2001:db8:abc1:8000::2    │
│ WLC-MUM-01         │ 10.252.40.10           │ 2001:db8:abc1:1002::10   │
└────────────────────┴────────────────────────┴──────────────────────────┘

SHEET 4: Cloud & Services
┌────────────────────┬────────────────────────┬──────────────────────────┐
│ Service            │ IPv4                   │ IPv6                     │
├────────────────────┼────────────────────────┼──────────────────────────┤
│ DNAC Primary (NJ)  │ 10.252.10.10           │ 2001:db8:abcd:1000::10   │
│ DNAC DR (London)   │ 10.252.20.10           │ 2001:db8:abcb:1000::10   │
│ ISE PSN MUM-01     │ 10.252.31.11           │ 2001:db8:abc1:1000::31   │
│ ISE PSN MUM-02     │ 10.252.31.12           │ 2001:db8:abc1:1000::32   │
│ vManage Cluster    │ 10.252.31.10           │ 2001:db8:abcd:1000::100  │
│ ThousandEyes MUM   │ 10.252.60.10           │ 2001:db8:abc1:1001::60   │
│ Splunk Indexer     │ 10.252.31.50           │ 2001:db8:abc1:1001::50   │
│ Azure SQL PE       │ 10.100.10.10           │ 2001:db8:abcf:10:10::10  │
│ GCP Vertex AI      │ 10.128.0.10            │ 2001:db8:abcf:20::10     │
└────────────────────┴────────────────────────┴──────────────────────────┘

Python Script: Auto-Generate Addressing Spreadsheet

#!/usr/bin/env python3
"""
Generate Abhavtech IPv6 addressing spreadsheet from site inventory
"""

import openpyxl
from openpyxl.styles import Font, PatternFill
import ipaddress

# Site inventory (matches Abhavtech actual sites)
SITES = [
    {"name": "Mumbai HQ", "id": 1, "ipv4_mgmt": "10.252.100.0/24", "floors": 6, "region": "APAC"},
    {"name": "Chennai HQ", "id": 2, "ipv4_mgmt": "10.252.101.0/24", "floors": 4, "region": "APAC"},
    {"name": "Bangalore", "id": 50, "ipv4_mgmt": "10.252.150.0/24", "floors": 1, "region": "APAC"},
    {"name": "Delhi", "id": 51, "ipv4_mgmt": "10.252.151.0/24", "floors": 1, "region": "APAC"},
    {"name": "Noida", "id": 55, "ipv4_mgmt": "10.252.155.0/24", "floors": 1, "region": "APAC"},
    {"name": "Hyderabad", "id": 52, "ipv4_mgmt": "10.252.152.0/24", "floors": 1, "region": "APAC"},
    {"name": "Pune", "id": 53, "ipv4_mgmt": "10.252.153.0/24", "floors": 1, "region": "APAC"},
    {"name": "Ahmedabad", "id": 54, "ipv4_mgmt": "10.252.154.0/24", "floors": 1, "region": "APAC"},
    {"name": "Kolkata", "id": 56, "ipv4_mgmt": "10.252.156.0/24", "floors": 1, "region": "APAC"},
    {"name": "Jaipur", "id": 57, "ipv4_mgmt": "10.252.157.0/24", "floors": 1, "region": "APAC"},
    {"name": "Surat", "id": 58, "ipv4_mgmt": "10.252.158.0/24", "floors": 1, "region": "APAC"},
    {"name": "Nagpur", "id": 59, "ipv4_mgmt": "10.252.159.0/24", "floors": 1, "region": "APAC"},
    {"name": "Chandigarh", "id": 60, "ipv4_mgmt": "10.252.160.0/24", "floors": 1, "region": "APAC"},
    {"name": "Coimbatore", "id": 61, "ipv4_mgmt": "10.252.161.0/24", "floors": 1, "region": "APAC"},
    {"name": "Lucknow", "id": 62, "ipv4_mgmt": "10.252.162.0/24", "floors": 1, "region": "APAC"},
    {"name": "London HQ", "id": 16, "ipv4_mgmt": "10.252.116.0/24", "floors": 4, "region": "EMEA"},
    {"name": "Frankfurt", "id": 17, "ipv4_mgmt": "10.252.117.0/24", "floors": 2, "region": "EMEA"},
    {"name": "New Jersey", "id": 32, "ipv4_mgmt": "10.252.132.0/24", "floors": 3, "region": "Americas"},
    {"name": "Dallas", "id": 33, "ipv4_mgmt": "10.252.133.0/24", "floors": 2, "region": "Americas"},
]

# Base IPv6 prefix (placeholder — replace with ARIN assignment)
BASE_PREFIX = "2001:db8:abc"

def site_ipv6_prefix(site_index):
    """Generate /48 prefix for a site"""
# abc0, abc1, abc2, ... abcF
    hex_suffix = f"{site_index:x}"
    return f"{BASE_PREFIX}{hex_suffix}::"

def generate_site_subnets(site, site_prefix):
    """Generate all /64 subnets for a site"""
    subnets = []

# Underlay
    subnets.append({
        "function": "Loopback0",
        "prefix": f"{site_prefix}0::1/128",
        "vlan": "N/A",
        "notes": "Border/CP/Edge loopbacks"
    })
    subnets.append({
        "function": "P2P Links",
        "prefix": f"{site_prefix}1::/64",
        "vlan": "N/A",
        "notes": "IS-IS underlay /127 subnets"
    })

# Management
    subnets.append({
        "function": "Device Management",
        "prefix": f"{site_prefix}1000::/64",
        "vlan": "999",
        "notes": "Switch/router OOB"
    })
    subnets.append({
        "function": "Monitoring",
        "prefix": f"{site_prefix}1001::/64",
        "vlan": "N/A",
        "notes": "TE, Splunk agents"
    })

# Overlay — Corporate
    for floor in range(1, site["floors"] + 1):
        subnets.append({
            "function": f"VN_CORPORATE Floor {floor}",
            "prefix": f"{site_prefix}200{floor}::/64",
            "vlan": f"101{floor}",
            "notes": f"Data VLAN for floor {floor}"
        })

# Overlay — Guest
    subnets.append({
        "function": "VN_GUEST Floor 1",
        "prefix": f"{site_prefix}3001::/64",
        "vlan": "1021",
        "notes": "Guest access"
    })

# Overlay — IoT
    subnets.append({
        "function": "VN_IOT Floor 1",
        "prefix": f"{site_prefix}4001::/64",
        "vlan": "1031",
        "notes": "IoT devices"
    })

# Overlay — Servers
    subnets.append({
        "function": "VN_SERVERS DMZ",
        "prefix": f"{site_prefix}5001::/64",
        "vlan": "1041",
        "notes": "App/Web servers"
    })

# Overlay — Voice
    subnets.append({
        "function": "VN_VOICE Floor 1",
        "prefix": f"{site_prefix}6001::/64",
        "vlan": "1051",
        "notes": "IP phones, Webex"
    })

# SD-WAN VPNs
    subnets.append({
        "function": "SD-WAN VPN 0",
        "prefix": f"{site_prefix}8000::/64",
        "vlan": "N/A",
        "notes": "WAN transport"
    })
    subnets.append({
        "function": "SD-WAN VPN 1",
        "prefix": f"{site_prefix}8001::/64",
        "vlan": "N/A",
        "notes": "Corporate overlay"
    })

    return subnets

def create_workbook():
    """Create Excel workbook with all sheets"""
    wb = openpyxl.Workbook()

# Sheet 1: Site Summary
    ws_summary = wb.active
    ws_summary.title = "Site Summary"
    ws_summary.append(["Site Name", "Site ID", "Region", "IPv4 Mgmt", "IPv6 /48 Block", "Floors"])

    for i, site in enumerate(SITES):
        ws_summary.append([
            site["name"],
            site["id"],
            site["region"],
            site["ipv4_mgmt"],
            f"{site_ipv6_prefix(i)}/48",
            site["floors"]
        ])

# Format header
    for cell in ws_summary[1]:
        cell.font = Font(bold=True)
        cell.fill = PatternFill(start_color="366092", end_color="366092", fill_type="solid")

# Sheet 2: Example site detail (Mumbai)
    ws_mumbai = wb.create_sheet("Mumbai Detail")
    ws_mumbai.append(["Function", "IPv6 Prefix", "VLAN ID", "Notes"])

    mumbai_prefix = site_ipv6_prefix(0)
    for subnet in generate_site_subnets(SITES[0], mumbai_prefix):
        ws_mumbai.append([subnet["function"], subnet["prefix"], subnet["vlan"], subnet["notes"]])

# Format header
    for cell in ws_mumbai[1]:
        cell.font = Font(bold=True)
        cell.fill = PatternFill(start_color="366092", end_color="366092", fill_type="solid")

# Save workbook
    wb.save("Abhavtech_IPv6_Addressing_Plan.xlsx")
    print("✅ Generated: Abhavtech_IPv6_Addressing_Plan.xlsx")

if __name__ == "__main__":
    create_workbook()

Run the script:

python3 generate_ipv6_addressing.py
# Output: Abhavtech_IPv6_Addressing_Plan.xlsx

DAY 3: LAB ENVIRONMENT SETUP AND TESTING

3.1 Lab Topology Design

Cisco Modeling Labs (CML) Topology

LAB TOPOLOGY: IPv6 Dual-Stack Proof-of-Concept
────────────────────────────────────────────────────────────────────────

Purpose: Validate IPv6 configs before production deployment
Platform: Cisco CML (formerly VIRL) or DevNet Sandbox
Duration: 8 hours build + 8 hours testing = Day 3 complete

TOPOLOGY:
┌────────────────────────────────────────────────────────────────────┐
│                                                                    │
│                      [External Router]                             │
│                    (Simulated ISP — IPv6)                          │
│                              │                                     │
│                              │                                     │
│              ┌───────────────┴───────────────┐                    │
│              │                               │                    │
│         [MUM-BN-01]                    [MUM-BN-02]                │
│       (C9500 Border)                 (C9500 Border)               │
│       IPv4: 10.250.1.1               IPv4: 10.250.1.2             │
│       IPv6: 2001:db8:abc1:0::1       IPv6: 2001:db8:abc1:0::2    │
│              │                               │                    │
│              └───────────┬───────────────────┘                    │
│                          │                                        │
│                     [MUM-CP-01]                                   │
│                   (C9500 Control Plane)                           │
│                   IPv4: 10.250.1.3                                │
│                   IPv6: 2001:db8:abc1:0::3                        │
│                          │                                        │
│              ┌───────────┴───────────┐                            │
│              │                       │                            │
│         [MUM-ED-01]             [MUM-ED-02]                       │
│       (C9300 Edge)            (C9300 Edge)                        │
│       IPv4: 10.250.1.10       IPv4: 10.250.1.11                  │
│       IPv6: 2001:db8:abc1:0::10  IPv6: 2001:db8:abc1:0::11       │
│              │                       │                            │
│              │                       │                            │
│         [Client-1]              [Client-2]                        │
│       (Ubuntu 22.04)          (Windows 11)                        │
│       IPv4: DHCP              IPv4: DHCP                          │
│       IPv6: SLAAC             IPv6: SLAAC                         │
│                                                                    │
└────────────────────────────────────────────────────────────────────┘

DEVICE IMAGES REQUIRED:
  - Cisco IOSv (vIOS) for routers: 17.9+
  - Cisco IOSvL2 for switches: 17.9+
  - Ubuntu 22.04 LTS (dual-stack client)
  - Windows 11 VM (dual-stack client)

CML Lab File (YAML)

lab:
  description: Abhavtech IPv6 Dual-Stack Lab
  notes: PoC for Week 1 validation
  title: ABV-IPv6-POC-Lab
  version: 0.0.4

nodes:
  - id: n0
    label: External-Router
    node_definition: iosv
    x: 0
    y: -100
    configuration: |
      hostname External-Router
      ipv6 unicast-routing
      !
      interface GigabitEthernet0/0
        description TO-INTERNET
        ip address 203.0.113.1 255.255.255.0
        ipv6 address 2001:db8:ffff::1/64
        no shutdown
      !
      interface GigabitEthernet0/1
        description TO-MUM-BN-01
        ip address 10.251.0.0 255.255.255.254
        ipv6 address 2001:db8:abc1:1::0/127
        no shutdown
      !
      ipv6 route ::/0 2001:db8:ffff::ffff

  - id: n1
    label: MUM-BN-01
    node_definition: cat9000v
    x: -200
    y: 0
    configuration: |
      ! See full config below in section 3.2

  - id: n2
    label: MUM-BN-02
    node_definition: cat9000v
    x: 200
    y: 0

  - id: n3
    label: MUM-CP-01
    node_definition: cat9000v
    x: 0
    y: 100

  - id: n4
    label: MUM-ED-01
    node_definition: cat9000v
    x: -200
    y: 200

  - id: n5
    label: MUM-ED-02
    node_definition: cat9000v
    x: 200
    y: 200

  - id: n6
    label: Client-1
    node_definition: ubuntu
    x: -200
    y: 300

  - id: n7
    label: Client-2
    node_definition: desktop
    x: 200
    y: 300

links:
  - id: l0
    n1: n0
    n2: n1
    i1: i1
    i2: i0
  - id: l1
    n1: n1
    n2: n3
    i1: i1
    i2: i0
# ... (continue for all links)

3.2 Lab Device Configuration

MUM-BN-01 (Border Node) — Complete Config

!============================================================================
! MUMBAI BORDER NODE 01 — LAB CONFIG
! Platform: Catalyst 9500 (C9500-48Y4C)
! Purpose: IPv6 dual-stack underlay + overlay validation
!============================================================================

hostname MUM-BN-01

! Enable IPv6 routing
ipv6 unicast-routing
ipv6 cef

! ============================================================================
! UNDERLAY: IPv4 + IPv6 Dual-Stack
! ============================================================================

! Loopback0 — Router ID for IS-IS + LISP RLOC
interface Loopback0
  description UNDERLAY-RLOC
  ip address 10.250.1.1 255.255.255.255
  ipv6 address 2001:db8:abc1:0::1/128
  no shutdown

! P2P to External Router (simulated WAN)
interface GigabitEthernet1/0/1
  description P2P-TO-EXTERNAL-ROUTER
  no switchport
  ip address 10.251.0.1 255.255.255.254
  ipv6 address 2001:db8:abc1:1::1/127
  ipv6 enable
  no shutdown

! P2P to MUM-CP-01 (Control Plane)
interface GigabitEthernet1/0/2
  description P2P-TO-MUM-CP-01
  no switchport
  ip address 10.251.1.0 255.255.255.254
  ipv6 address 2001:db8:abc1:1:1::0/127
  ipv6 enable
  no shutdown

! ============================================================================
! IS-IS UNDERLAY (Dual-Stack)
! ============================================================================

router isis UNDERLAY
  net 49.0001.0100.2500.1001.00
  is-type level-2-only
  metric-style wide
  log-adjacency-changes
  !
  address-family ipv4 unicast
    redistribute connected
  exit-address-family
  !
  address-family ipv6 unicast
    redistribute connected
  exit-address-family

interface Loopback0
  ip router isis UNDERLAY
  ipv6 router isis UNDERLAY
  isis circuit-type level-2-only

interface GigabitEthernet1/0/1
  ip router isis UNDERLAY
  ipv6 router isis UNDERLAY
  isis circuit-type level-2-only
  isis network point-to-point

interface GigabitEthernet1/0/2
  ip router isis UNDERLAY
  ipv6 router isis UNDERLAY
  isis circuit-type level-2-only
  isis network point-to-point

! ============================================================================
! BFD (Dual-Stack)
! ============================================================================

bfd-template single-hop BFD-TEMPLATE
  interval min-tx 1000 min-rx 1000 multiplier 3

interface GigabitEthernet1/0/1
  bfd template BFD-TEMPLATE
  bfd interval 1000 min_rx 1000 multiplier 3
  bfd ipv6 interval 1000 min_rx 1000 multiplier 3

interface GigabitEthernet1/0/2
  bfd template BFD-TEMPLATE
  bfd interval 1000 min_rx 1000 multiplier 3
  bfd ipv6 interval 1000 min_rx 1000 multiplier 3

! ============================================================================
! LISP (Dual-Stack)
! ============================================================================

router lisp
  !
  ! Locator set for this Border
  locator-set RLOC-SET
    ipv4-interface Loopback0 priority 1 weight 50
    ipv6-interface Loopback0 priority 1 weight 50
    exit-locator-set
  !
  ! Instance 8001 — VN_CORPORATE (IPv4)
  instance-id 8001
    service ipv4
      eid-table vrf VN_CORPORATE
      database-mapping 10.100.0.0/16 locator-set RLOC-SET
      map-cache 10.100.0.0/16 map-request
      map-server 10.250.1.3 key lab-key
      map-resolver 10.250.1.3
    exit-service-ipv4
    !
    service ipv6
      eid-table vrf VN_CORPORATE
      database-mapping 2001:db8:abc1:2000::/52 locator-set RLOC-SET
      map-cache 2001:db8:abc1:2000::/52 map-request
      map-server 2001:db8:abc1:0::3 key lab-key
      map-resolver 2001:db8:abc1:0::3
    exit-service-ipv6
  !
  exit-router-lisp

! ============================================================================
! VRFs
! ============================================================================

vrf definition VN_CORPORATE
  rd 1:8001
  !
  address-family ipv4
    route-target export 1:8001
    route-target import 1:8001
  exit-address-family
  !
  address-family ipv6
    route-target export 1:8001
    route-target import 1:8001
  exit-address-family

! ============================================================================
! VXLAN (NVE Interface)
! ============================================================================

interface nve1
  description FABRIC-VXLAN-TUNNEL
  no ip address
  source-interface Loopback0
  host-reachability protocol lisp
  !
  member vni 8001 vrf VN_CORPORATE
  member vni 8001 mcast-group 239.1.1.1
  member vni 10011 vlan-based

! ============================================================================
! Overlay SVIs (Anycast Gateway)
! ============================================================================

vlan 1011
  name VN_CORPORATE_DATA_F1

interface Vlan1011
  description ANYCAST-GW-VN_CORPORATE-FLOOR1
  vrf forwarding VN_CORPORATE
  ip address 10.100.1.1 255.255.255.0
  ipv6 address 2001:db8:abc1:2001::1/64
  ipv6 enable
  ipv6 nd managed-config-flag
  ipv6 nd other-config-flag
  no ip redirects
  no ip proxy-arp
  mac-address 0000.0c9f.f001   ! Anycast MAC (same on all edges)
  lisp mobility dynamic-eid CORPORATE_EID_v4
  lisp mobility dynamic-eid CORPORATE_EID_v6
  no shutdown

! ============================================================================
! DHCPv6 (if needed — otherwise SLAAC)
! ============================================================================

ipv6 dhcp pool DHCPV6-CORPORATE-FLOOR1
  address prefix 2001:db8:abc1:2001::/64 lifetime infinite
  dns-server 2001:db8:abc1:1000::53
  domain-name abhavtech.com

interface Vlan1011
  ipv6 dhcp server DHCPV6-CORPORATE-FLOOR1

! ============================================================================
! Management
! ============================================================================

ip domain-name abhavtech.local
crypto key generate rsa modulus 2048

line vty 0 15
  transport input ssh
  login local

username admin privilege 15 secret Cisco123!

end

Verification Commands (Run in Lab)

# SSH to MUM-BN-01
ssh admin@10.250.1.1

! Test 1: IPv6 Underlay Reachability
ping ipv6 2001:db8:abc1:0::3
! Expected: replies from MUM-CP-01

! Test 2: IS-IS IPv6 Adjacency
show isis ipv6 neighbors
! Expected: MUM-CP-01 in UP state

! Test 3: LISP IPv6 Database
show lisp instance-id 8001 ipv6 database
! Expected: 2001:db8:abc1:2000::/52 registered

! Test 4: BFD Dual-Stack
show bfd neighbors
! Expected: Both IPv4 + IPv6 sessions UP

! Test 5: Client SLAAC
! On Ubuntu Client-1:
ip -6 addr show
! Expected: Auto-configured IPv6 from 2001:db8:abc1:2001::/64

! Test 6: Client IPv6 Ping
ping6 2001:db8:abc1:2002::50
! Expected: Ping another client in different subnet via LISP

DAY 4: PRODUCTION TOOLING PREPARATION

4.1 DNAC IPv6 Pool Creation

Create IPv6 Pools for Mumbai (Production)

DNAC UI → Design → Network Settings → IP Address Pools → Add Pool

POOL 1: Mumbai Corporate Floor 1
─────────────────────────────────────────────────────────────────────
Pool Name:          IPv6-MUM-CORP-F1
Pool Type:          Generic
IP Subnet:          (leave blank for IPv6)
IPv6 Prefix:        2001:db8:abc1:2001::/64
IPv6 Subnet Mask:   64
IPv6 Gateway:       2001:db8:abc1:2001::1
DHCPv6 Server:      None (use SLAAC)
DNS Server (IPv6):  2001:db8:abc1:1000::53
DHCP Server:        Local (on edge switch SVI)

POOL 2: Mumbai Corporate Floor 2
─────────────────────────────────────────────────────────────────────
Pool Name:          IPv6-MUM-CORP-F2
IPv6 Prefix:        2001:db8:abc1:2002::/64
IPv6 Gateway:       2001:db8:abc1:2002::1
[... same settings as Pool 1]

REPEAT for all 6 floors + Guest/IoT/Voice VLANs = ~10 pools per site

Assign Pools to Sites in DNAC

DNAC → Design → Network Hierarchy → Select "Mumbai" site

Click "Edit"
  → IP Address Pools
  → Add Pool
  → Select: IPv6-MUM-CORP-F1
  → VLAN: 1011
  → Click Save

REPEAT for all pools

4.2 ISE IPv6 Configuration

Add IPv6 Addresses for Network Devices

ISE UI → Administration → Network Resources → Network Devices

DEVICE: MUM-BN-01
  Name: MUM-BN-01
  IPv4 Address: 10.250.1.1
  IPv6 Address: 2001:db8:abc1:0::1   ← ADD THIS
  Mask: 128
  RADIUS Shared Secret: <same as IPv4>
  TACACS+ Shared Secret: <same as IPv4>
  Device Type: Cisco Catalyst 9500
  Location: Mumbai

REPEAT for all 708 devices (use CSV import)

ISE CSV Import Template (IPv6)

"Device Name","IPv4 Address","IPv6 Address","Shared Secret","Device Type","Location"
"MUM-BN-01","10.250.1.1","2001:db8:abc1:0::1","SecretKey123","Cisco Catalyst 9500","Mumbai"
"MUM-BN-02","10.250.1.2","2001:db8:abc1:0::2","SecretKey123","Cisco Catalyst 9500","Mumbai"
"MUM-CP-01","10.250.1.3","2001:db8:abc1:0::3","SecretKey123","Cisco Catalyst 9500","Mumbai"
...

ISE IPv6 Profiling Policy (Endpoint Recognition)

ISE → Policy → Profiling → Profiling Policies

CREATE: Windows-Workstation-IPv6
  Rule:
    IF DHCPv6-Option(15) CONTAINS "WORKGROUP" OR "DOMAIN"
    AND DHCPv6-DUID EXISTS
    THEN Assign SGT: 10 (Employees)

CREATE: iPhone-iOS-IPv6
  Rule:
    IF DHCPv6-Vendor-Class CONTAINS "Apple"
    AND DHCPv6-Option(1) EQUALS "00:01:00:01:xx:xx:xx"
    THEN Assign SGT: 10 (Employees)

4.3 vManage IPv6 Feature Templates

Create IPv6 System Template

vManage UI → Configuration → Templates → Feature Templates → Add Template

TEMPLATE: ABV-System-IPv6-Hub
Device Type: vedge-c8500-12X
Template Type: System

Basic Configuration:
  Hostname:         {{system_hostname}}
  System IP:        {{system_ip}}
  IPv6 System IP:   {{system_ipv6}}   ← NEW FIELD
  Site ID:          {{site_id}}
  Organization:     Abhavtech
  vBond:            vbond.abhavtech.com

IPv6 Settings:
  ☑ Enable IPv6
  IPv6 System IP: 2001:db8:abc1:8000::1/128 (for Mumbai hub)

Create IPv6 VPN 0 Interface Template

TEMPLATE: ABV-IF-VPN0-MPLS-IPv6
Device Type: vedge-c8500-12X
Template Type: VPN Interface Ethernet

Interface Name: TenGigabitEthernet0/0/0
Description:    MPLS-WAN-PRIMARY-DUAL-STACK

IPv4 Configuration:
  Address Type: Static
  IPv4 Address: {{mpls_ipv4}}
  Subnet Mask:  {{mpls_mask}}

IPv6 Configuration:   ← NEW SECTION
  ☑ Enable IPv6
  Address Type: Static
  IPv6 Address: {{mpls_ipv6}}
  Prefix Length: 127

Tunnel:
  Color: mpls
  Encapsulation: ipsec
  BFD:
    ☑ Enable IPv4 BFD
    ☑ Enable IPv6 BFD   ← NEW
    Multiplier: 7
    Hello Interval: 1000

4.4 Monitoring Tools IPv6 Preparation

ThousandEyes: Add IPv6 Tests

ThousandEyes UI → Cloud & Enterprise Agents → Agent Settings

AGENT: Mumbai Enterprise Agent (10.252.60.10)
  → Network → IPv6 Address: 2001:db8:abc1:1001::60
  → Click Save

CREATE TEST: IPv6 HTTP Server Test
  Test Name: IPv6-Google
  Target: ipv6.google.com
  Agents: Select all 6 enterprise agents
  Interval: 5 minutes

CREATE TEST: IPv6 Agent-to-Agent
  Test Name: Mumbai-to-London-IPv6
  Source: Mumbai Enterprise Agent
  Target: London Enterprise Agent (IPv6: 2001:db8:abcb:1001::60)
  Protocol: TCP
  Port: 49153
  Interval: 5 minutes

Splunk: Add IPv6 Listener

# SSH to Splunk indexer (10.252.31.50)
ssh splunk@10.252.31.50

# Edit inputs.conf
sudo vi /opt/splunk/etc/system/local/inputs.conf

# Add IPv6 syslog listener
[tcp://2001:db8:abc1:1001::50:514]
connection_host = ip
sourcetype = syslog
index = main

[udp://2001:db8:abc1:1001::50:514]
connection_host = ip
sourcetype = syslog
index = main

# Restart Splunk
sudo /opt/splunk/bin/splunk restart

Verify Splunk IPv6 Listener

# Test from Mumbai edge switch
ssh admin@10.250.1.10

! Send test syslog via IPv6
send log facility local0 severity informational message "IPv6 syslog test from MUM-ED-01"

# On Splunk: Search
index=main host="2001:db8:abc1:0::10"
# Expected: See test log message

DAY 5: READINESS ASSESSMENT AND GO/NO-GO

5.1 Infrastructure Readiness Checklist

WEEK 1 DELIVERABLES — FINAL CHECKLIST:
═══════════════════════════════════════════════════════════════════════

DAY 1: IPv6 PREFIX PLANNING
☐ ARIN /44 request submitted (expected approval: 2-4 weeks)
☐ Addressing hierarchy documented (19 sites + cloud + IoT)
☐ Stakeholder review completed (Network Arch, Security, Cloud teams)

DAY 2: IPAM AND SPREADSHEET
☐ DNAC IPAM configured for IPv6 (management IPv6: 2001:db8:abc1:1000::10)
☐ Master spreadsheet created (Abhavtech_IPv6_Addressing_Plan.xlsx)
☐ All 19 sites have /48 assignments documented
☐ Device inventory updated with IPv6 loopback addresses (708 devices)

DAY 3: LAB VALIDATION
☐ CML lab topology deployed (5 switches + 2 clients)
☐ IPv6 underlay tested (IS-IS dual-stack, BFD IPv4 + IPv6)
☐ IPv6 overlay tested (LISP dual-stack, VXLAN over IPv6 RLOC)
☐ Client SLAAC working (Ubuntu + Windows 11 auto-config)
☐ Cross-subnet IPv6 ping successful (via LISP fabric)

DAY 4: PRODUCTION TOOLING
☐ DNAC: IPv6 pools created for Mumbai (10 pools × 6 VNs)
☐ ISE: IPv6 device addresses added (708 devices via CSV import)
☐ ISE: IPv6 profiling policies created (Windows, iPhone, IoT)
☐ vManage: IPv6 feature templates created (System, VPN0 interface)
☐ ThousandEyes: IPv6 tests configured (HTTP + Agent-to-Agent)
☐ Splunk: IPv6 syslog listener active (port 514/TCP + UDP)

DAY 5: SIGN-OFF
☐ All Week 1 deliverables complete (100% checklist above)
☐ Lab results documented and shared with stakeholders
☐ Phase 1 kickoff meeting scheduled (Week 2 Day 1)
☐ Rollback plan reviewed and approved
☐ Change control ticket created for Phase 1 (SD-WAN underlay)

═══════════════════════════════════════════════════════════════════════
FINAL STATUS: ☐ GO   ☐ NO-GO (with reason)

IF GO:
  - Phase 1 (SD-WAN Underlay IPv6) begins Week 2
  - First production site: Mumbai Hub (pilot)
  - Expected duration: 8 weeks (underlay + overlay)

IF NO-GO:
  - Resolve blockers identified in checklist
  - Reschedule Week 1 completion
  - Do NOT proceed to Phase 1 until 100% ready

5.2 Stakeholder Sign-Off Meeting

Meeting Agenda (60 minutes)

ABHAVTECH IPv6 MIGRATION — WEEK 1 SIGN-OFF MEETING
Date: [Friday, Week 1]
Duration: 60 minutes
Attendees: Network Arch, Security, Cloud, NOC, Change Mgmt

AGENDA:
─────────────────────────────────────────────────────────────────────

1. Week 1 Deliverables Review (10 min)
   - Presenter: Network Architect
   - Show: Master spreadsheet, DNAC IPv6 pools, lab results

2. Lab Validation Demo (15 min)
   - Presenter: Network Engineer
   - Demo: Dual-stack ping, LISP IPv6 EID lookup, BFD sessions

3. Production Readiness Discussion (15 min)
   - DNAC: IPv6 pool strategy per site
   - ISE: IPv6 profiling approach
   - vManage: Template rollout plan
   - Monitoring: IPv6 visibility in TE, Splunk, AppD

4. Phase 1 Plan Overview (10 min)
   - Scope: SD-WAN underlay IPv6 (19 sites, 8 weeks)
   - Pilot: Mumbai hub (Week 2)
   - Rollout: APAC → EMEA → Americas

5. Risk Review and Rollback Plan (5 min)
   - Risk: IPv6 breaks IPv4 (mitigation: separate config blocks)
   - Rollback: Remove IPv6 config, verify IPv4 unaffected

6. Go/No-Go Decision (5 min)
   - Vote: All stakeholders
   - Decision: GO (proceed to Phase 1) or NO-GO (resolve blockers)

─────────────────────────────────────────────────────────────────────

REQUIRED APPROVALS:
☐ Network Architecture Team
☐ Security Team
☐ Cloud Infrastructure Team (Azure/GCP owners)
☐ NOC Operations
☐ Change Management

DECISION: _____________  (GO / NO-GO)

5.3 Next Steps (If GO)

WEEK 2 KICKOFF (Phase 1 — SD-WAN Underlay IPv6):
─────────────────────────────────────────────────────────────────────

Monday, Week 2:
  - Morning: Phase 1 kickoff meeting (1 hour)
  - Afternoon: Begin Mumbai hub underlay config

Tuesday-Friday, Week 2:
  - Deploy IPv6 on Mumbai hub SD-WAN devices
    * C8500-12X (MUM-HUB-01/02): Loopbacks, WAN interfaces
    * IS-IS dual-stack
    * BFD IPv6 sessions to other hubs
  - Validation: Cross-site IPv6 ping (Mumbai → London → NJ)

Week 3-4:
  - Rollout to all 6 hub sites (Chennai, London, Frankfurt, NJ, Dallas)

Week 5-8:
  - Rollout to all 13 branch sites (ISR 4331, ISR 1100)

Week 9:
  - Phase 1 validation and sign-off
  - Prepare for Phase 2 (SD-Access overlay IPv6)

WEEK 1 COMPLETE

Summary: - IPv6 addressing planned and documented - ARIN allocation requested (/44 prefix) - Lab validated (dual-stack LISP/VXLAN working) - Production tools prepared (DNAC, ISE, vManage, ThousandEyes, Splunk) - Stakeholder sign-off obtained

Next Guide: Week 2-4 (Phase 1 — SD-WAN Underlay IPv6 Deployment)


© 2025 Abhavtech - IPv6 Migration Week 1 Guide Version 1.0 | Last Updated: January 2025