How to Get an IPv6 Prefix from Your ISP

Getting an IPv6 prefix from your Internet Service Provider (ISP) is essential for enabling full IPv6 connectivity across your home or business network. This guide covers everything you need to know about obtaining, configuring, and troubleshooting IPv6 prefix delegation.

What is an IPv6 Prefix?

An IPv6 prefix is a block of IPv6 addresses assigned to your network by your ISP. Unlike IPv4, where you typically receive a single public IP address (or a small range), IPv6 provides you with an entire subnet of addresses that you can use across multiple devices and network segments.

Think of it this way: instead of receiving one address, you receive a whole neighborhood of addresses. This allows you to:

Understanding Prefix Sizes

IPv6 prefixes come in different sizes, indicated by their prefix length. The smaller the number after the slash, the more addresses you receive:

Common Prefix Sizes

/48 prefix - 65,536 subnets

/56 prefix - 256 subnets (Recommended for Home Users)

/60 prefix - 16 subnets

/64 prefix - Single subnet (Not Recommended)

According to recent data, approximately 21% of IPv6 deployments use /56 prefixes, 22% use /60, and 55% use /64 (primarily in mobile networks).

DHCPv6 Prefix Delegation: The Standard Method

DHCPv6 Prefix Delegation (DHCPv6-PD) is the most common and standardized method for obtaining an IPv6 prefix from your ISP. This protocol extends DHCPv6 to allow clients to request entire prefixes rather than individual addresses.

How DHCPv6-PD Works

  1. Request Phase: Your router's WAN interface acts as a DHCPv6 client and sends a prefix delegation request to your ISP's DHCPv6 server
  2. Assignment Phase: The ISP's server responds with an IPv6 prefix (e.g., 2001:db8:1234::/56)
  3. Routing Phase: The ISP automatically routes this prefix to your router's WAN interface
  4. Distribution Phase: Your router subdivides the prefix and assigns /64 subnets to your internal network segments
  5. Advertisement Phase: Your router advertises these subnets to devices using Router Advertisement (SLAAC) or DHCPv6

The beauty of this system is its automation - once configured, your router handles everything automatically.

Configuring Your Router for Prefix Delegation

Most modern routers support DHCPv6 Prefix Delegation, but the configuration interface varies by manufacturer.

General Configuration Steps

  1. Access your router's administration interface
  2. Navigate to the IPv6 or WAN settings section
  3. Select DHCPv6 Prefix Delegation as the IPv6 connection type
  4. Configure the following settings:
    • WAN Connection Type: DHCPv6-PD
    • Prefix Delegation Size: Ask your ISP (typically /56 or /60)
    • LAN Configuration: Enable Router Advertisement (SLAAC)

Example: Consumer Router Configuration

WAN Interface (IPv6):
  Connection Type: DHCPv6 Prefix Delegation
  Prefix Delegation Size: /56
  Request IPv6 Address: Enabled

LAN Interface (IPv6):
  IPv6 Assignment: Automatic (from delegated prefix)
  Router Advertisement: Enabled
  DHCPv6 Server: Enabled (optional, for DNS/other options)

Example: Advanced Router (OpenWrt/pfSense)

For more control, advanced routers allow detailed DHCPv6-PD configuration:

# WAN Interface
IPv6 Configuration Type: DHCPv6 client
Request only an IPv6 prefix: No
DHCPv6 Prefix Delegation size: 56
Send IPv6 prefix hint: No
Debug DHCPv6 client: No (enable for troubleshooting)

# LAN Interface
IPv6 Configuration Type: Track Interface
IPv6 Interface: WAN
IPv6 Prefix ID: 0 (or 1, 2, 3... for multiple LAN subnets)
Router Advertisements: Assisted (or Managed for DHCPv6)

Cisco Router Example

For enterprise environments using Cisco equipment:

! Configure DHCPv6 client on WAN interface
interface GigabitEthernet0/0
 ipv6 enable
 ipv6 address dhcp
 ipv6 dhcp client pd MY-PREFIX

! Use delegated prefix on LAN interface
interface GigabitEthernet0/1
 ipv6 enable
 ipv6 address MY-PREFIX ::1/64
 ipv6 nd prefix MY-PREFIX

Static Prefix Assignment (Alternative Method)

Some ISPs, particularly for business customers, assign static IPv6 prefixes instead of using DHCPv6-PD. In this case:

  1. Contact your ISP to request a static IPv6 prefix allocation
  2. Receive documentation showing your assigned prefix (e.g., 2001:db8:abcd::/48)
  3. Manually configure your router's WAN interface with an address from this prefix
  4. Configure static routing if required by your ISP
  5. Assign subnets from your prefix to internal interfaces

Static assignment provides stability (your prefix never changes) but requires manual configuration and typically comes with additional costs.

Verifying Your IPv6 Prefix

After configuration, verify that you've successfully received a prefix:

Router-Level Verification

Check delegated prefix:

# Linux/OpenWrt
ip -6 route show

# You should see a route like:
# 2001:db8:1234::/56 via fe80::1 dev eth0

# pfSense/FreeBSD
ifconfig | grep inet6

# Cisco
show ipv6 dhcp interface
show ipv6 route

Check interface addresses: Your LAN interfaces should have addresses from the delegated prefix:

# Example output
eth1: 2001:db8:1234:0::1/64
eth2: 2001:db8:1234:1::1/64

Device-Level Verification

On a device connected to your network:

Windows:

ipconfig /all
# Look for "IPv6 Address" with a non-link-local address (not starting with fe80::)

Linux/Mac:

ip addr show
# or
ifconfig
# Look for "inet6" addresses with global scope

Online Verification

The easiest way to verify end-to-end IPv6 connectivity is to use online testing tools:

Visit https://test-ipv6.run - This comprehensive testing site will:

You should see results showing successful IPv6 connectivity with a high score (9-10 out of 10 for full dual-stack operation).

Troubleshooting Common Issues

Problem: No Prefix Received

Symptoms: Router shows no delegated prefix, devices have only link-local addresses (fe80::)

Solutions:

  1. Verify ISP support - Contact your ISP to confirm IPv6 is available on your account
  2. Check router configuration - Ensure DHCPv6-PD is enabled on WAN interface
  3. Review logs - Enable DHCPv6 debugging to see DHCP message exchange
  4. Restart the connection - Sometimes releasing and renewing helps
  5. Check modem mode - If using a separate modem, ensure it's in bridge mode

Debug commands:

# OpenWrt/Linux
logread -f | grep dhcp6c

# pfSense
Status > System Logs > DHCP (enable DHCPv6 debug first)

Problem: Prefix Received but Devices Can't Connect

Symptoms: Router has prefix, but devices can't reach IPv6 internet

Solutions:

  1. Verify Router Advertisement - Ensure RA is enabled on LAN interfaces
  2. Check firewall rules - IPv6 traffic may be blocked
  3. Verify prefix assignment - Ensure LAN interfaces have addresses from the prefix
  4. Test from router - Can the router itself ping IPv6 addresses (e.g., 2001:4860:4860::8888)?
  5. Check ISP routing - ISP may not be routing your prefix correctly

Problem: Prefix Keeps Changing

Symptoms: Your IPv6 prefix changes periodically, breaking connections

Solutions:

  1. Request longer lease times - Contact ISP to increase DHCP lease duration
  2. Use Dynamic DNS - Services like he.net or Cloudflare can handle changing prefixes
  3. Request static prefix - Ask ISP if static assignment is available (may cost extra)
  4. Check for reconnections - Frequent WAN disconnects cause prefix changes

Problem: Only Receiving a /64

Symptoms: ISP provides /64 instead of /56 or /60, preventing subnetting

Solutions:

  1. Configure router to request larger prefix - Explicitly request /56 or /60
  2. Contact ISP support - Request upgrade to /56 (standard for residential)
  3. Use single subnet - If stuck with /64, run all devices on one network segment
  4. Consider alternative ISP - If IPv6 support is important to you

What If My ISP Doesn't Provide IPv6?

Unfortunately, not all ISPs have deployed IPv6 yet. If your ISP doesn't offer native IPv6:

Temporary Solutions

1. IPv6 Tunnel Brokers

2. Switch ISPs

3. VPN with IPv6

Advocate for IPv6

Contact your ISP's customer support and request IPv6 support. The more customers ask, the more likely deployment becomes. Mention:

Best Practices

  1. Document your configuration - Keep notes on your prefix, configuration settings, and ISP requirements
  2. Monitor prefix stability - Check if your prefix remains consistent over time
  3. Use SLAAC for simplicity - Router Advertisement handles most cases automatically
  4. Enable IPv6 firewall - Don't assume NAT-like protection; configure explicit firewall rules
  5. Test regularly - Use test-ipv6.run to verify ongoing connectivity
  6. Plan your subnetting - Even with /56, plan your subnet allocation logically:
    • :0::/64 - Primary LAN
    • :1::/64 - Guest network
    • :2::/64 - IoT devices
    • :3::/64 - DMZ
    • etc.

Summary

Getting an IPv6 prefix from your ISP is typically straightforward with DHCPv6 Prefix Delegation:

  1. Verify your ISP offers IPv6 and determine the prefix size they provide
  2. Configure your router's WAN interface for DHCPv6-PD
  3. Enable Router Advertisement on LAN interfaces
  4. Verify connectivity using test-ipv6.run
  5. Troubleshoot using logs and diagnostic commands if issues arise

With proper configuration, you'll have full IPv6 connectivity across your entire network, enabling the next generation of internet protocols and eliminating the need for NAT in most scenarios.

For ongoing verification and troubleshooting of your IPv6 setup, regularly visit https://test-ipv6.run to ensure your configuration maintains optimal IPv6 connectivity.