IPv6 Config for our website

David Qi
Workstream Tech
Published in
2 min readDec 17, 2018

Internet Protocol Version 6 (IPv6) is a new version of the Internet Protocol (IP), the transport mechanism used for most communication on the Internet. Devices use numeric IP addresses to connect to each other within and between networks.

A sample IPv6 address:

2100:9f14:730:2ba0:be55:17b9:f56:a049

What is IPv6
https://en.wikipedia.org/wiki/IPv6#IPv6_in_the_Domain_Name_System

The coverage for the IPv6

See more:
https://www.internetsociety.org/resources/2018/state-of-ipv6-deployment-2018/
https://www.ithome.com/html/it/388788.htm

Config IPv6 Directly (Direct parse the domain to IP address)
1. CNAME the domain
https://api-ipv6.workstream.is
api-ipv6 AAAA 2100:9f14:730:2ba0:be55:17b9:f56:a049

Config IPv6 Use AWS Loading Balance

  1. Get an IPv6 CIDR for your VPC: Go to VPC > Your VPCs > ${YOUR_VPC} > Edit CIDRs > Add IPv6 CIDR. The IPv6 CIDR is automatically choosen by AWS. You can’t configure the IPv6 CIDR on your own.
  2. For the subnet(s) your ALB is located in, you have to allocate an IPv6 subnet from your previously generated IPv6 subnet. Go to VPC > Subnets > ${YOUR_ALB_SUBNETS} > Edit IPv6 CIDRs > Add IPv6 CIDR. You can have 255 IPv6 subnets.
  3. You have to add any IPv6 destination to your routing table. In VPC > Route Tables > ${YOUR_ROUTING_TABLE} > Routes > Edit add “Destination=::/0” and “Target=${YOUR_IGW_ID}” as routing table entry. This was, BTW, the part I had forgotten.
  4. Enable dualstack for your ALB. Go to EC2 > Load Balancers > ${YOUR_APPLICATION_LOAD_BALANCER} > Edit IP address type and select dualstack. The option is only available if your subnets have been previously configured with IPv6 CIDRs.
  5. Your load balancer’s security group must allow HTTP and/or HTTPS traffic through IPv6. Go to EC2 > Security Groups > ${YOUR_APPLICATION_LOAD_BALANCERS_SECURITY_GROUP} and add the inbound and outbound rules “Protocol=TCP,Port Range=80, Source=::/0” and/or “Protocol=TCP,Port Range=443, Source|Destination=::/0”.
  6. CNAME the domain
    https://api-ipv6.workstream.is
 api-ipv6 CNAME xxxx.us-west-2.elb.amazonaws.com

See more:
https://www.schakko.de/2018/03/21/using-ipv6-aws-application-load-balancer-alb/

Test the IPv6 whether it is available
Use this website `https://api-ipv6.workstream.is` to validate IPv6 support

The test result:

Tested on Mon, 17 Dec 2018 01:15:57 GMT
1. AAAA DNS record 2600:1f14:730:2b00:d6d3:3801:91db:18fc
2. IPv6 web server nginx/1.10.1
3. IPv6 DNS server This domain has no IPv6 DNS server, this may prevent some IPv6-only users from reaching it.

--

--