KEMBAR78
03 Ipv6 Address Representation and Types | PDF | I Pv6 | Ip Address
0% found this document useful (0 votes)
3 views33 pages

03 Ipv6 Address Representation and Types

ipv6 representation

Uploaded by

maximlee4212
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views33 pages

03 Ipv6 Address Representation and Types

ipv6 representation

Uploaded by

maximlee4212
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 33

IPv6 Address

Representation
and Types

1
IPv6 Address Representation
• IPv6 address is 128 bits

• Number of IPv6 addresses : 2^128 ~ 3.4 x 1038

• IPv6 address is represented in hexadecimal


– 4-bits (nibble) represent a hexadecimal digit
– 4 nibbles (16-bits) make a hextet
– represented as eight hextets (4 nibbles or 16 bits), each
separated by a colon (:)

2001:ABCD:1234::DC0:A910 nibble

1010 1001 0001 0000


Hextet

2
IPv6 Address Representation (2)
2001:0DB8:0000:0000:0000:036E:1250:2B00

• Abbreviated form

2001:0DB8:0000:0000:0000:036E:1250:2B00 Leading 0s

– Leading zeroes (0) in any hextet can be omitted


2001:DB8:0:0:0:36E:1250:2B00 Sequence of 0s

– A double colon (::) can replace contiguous hextet


segments of zeroes
2001:DB8::36E:1250:2B00 Double colons

– (::) can only be used once!

3
IPv6 Address Representation (3)
• Double colons (::) representation
– RFC5952 recommends that the largest set of :0: be replaced
with :: for consistency
2001:0:0:0:2F:0:0:5
2001::2F:0:0:5 instead of 2001:0:0:0:2F::5

– Where there is same number of :0:, the first set be replaced


with ::
2001:DB8:0:0:2F:0:0:5
2001:DB8::2F:0:0:5 instead of 2001:DB8:0:0:2F::5
• Prefix Representation
– Representation of prefix is similar to IPv4 CIDR

→ prefix/prefix-length
2001:DB8::/40

4
Quiz
Please write the compressed format of these
addresses:
1. 2001:0db8:0000:0000:0000:0000:0000:0000
2. 2001:0db8:0000:0000:d170:0000:0100:0ba8
3. 2001:0db8:0000:0000:00a0:0000:0000:10bc
4. 2001:0db8:0fc5:007b:ab70:0210:0000:00bb
IPv6 Addressing Model RFC
4291

• Unicast Address
– Assigned to a single interface
B
– Packet sent only to the interface with that address
A
B
• Anycast Address
– Same address assigned to more than one interface B
(on different nodes)
– Packet for an anycast address routed to the nearest A
interface (routing distance) B

• Multicast Address
– group of interfaces (on different nodes) join a
multicast group B
– A multicast address identifies the interface group
– Packet sent to the multicast address is replicated to A
all interfaces in the group

6
Overview of IPv6 Address Types

IPv6 Addressing

Unicast Anycast Multicast

Assigned Solicited Node


ff00::/8 ff02::1:ff00:0000/104

Unspecified Embedded Unique Local


Loopback Global Unicast Link-Local
Address IPv4
::/128 ::1/128 ::/80 2000::/3 fe80::/10 fc00::/7

Figure 1: IPv6 Address Types


Figure 1: Adapted from Graziani, R. (2013). IPv6 Fundamentals: A Straightforward Approach to Understanding IPv6. USA: Cisco Press, Figure 4-1.
IPv6 Address Types.
Special Unicast Addresses

• Unspecified Address (absence of a address)


::/128

• Loopback (test OSI/TCP-IP stack implementation)


::1/128

8
Global Unicast Addresses
• Globally unique and routable IPv6 address

• The Internet Assigned Numbers Authority


(IANA) currently assigns IPv6 addresses only out
of the binary range starting with 001, that means
2000::/3.

• IANA has allocated Global Unicast Addresses to


RIRs (Regional Internet Registry). There are five
RIRs. For example, APNIC has been allocated
2400::/12.

More details of allocation is on this link:


https://www.iana.org/assignments/ipv6-unicast-address-assignments/ipv6-unicast-address-assignments.xhtml

9
Global Unicast Addresses

• RIRs assign /32 to ISPs


3 bits

001 RIR ISP Global Unicast Address


9 bits
20 bits
/3 /12 /32

128 bits

10
IPv6 Addressing Structure
RFC
Network Prefix 6177

Customer(Site) Prefix Subnet ID Interface ID

48 bits 16 bits 64 bits

• Customer (Site) Prefix: assigned to a customer site


– Group of subnets
– ISPs/RIRs ‘would’ assign /48 (/56 to customers)

• Subnet ID: identifies the subnets (links) within a site

• Interface ID: host portion of the IPv6 address


– how many hosts within a subnet

11
IPv6 Addressing Structure
0 63 64 127
Network Prefix Interface ID

32
16

16
ISP /32
64
Customer Site /48
End Site Subnet /64 Device 128 Bit Address
Link-local Unicast Addresses
• Auto configured address (similar to APIPA)
– Every IPv6 enabled device must have a link-local address
– To communicate with other IPv6 devices on the same link
– FE80::/10

• The link-local address is used by routers as the


next-hop address when forwarding IPv6 packets

• All IPv6 hosts on a subnet/link, uses the router’s


link-local as the default gateway
– Routers use the link-local as the source in ND-RA
messages

13
Zone IDs for Link-locals

Example 1 - fe80::4e0:37e4:c5d1:c845%en0
Example 2 - fe80::aede:48ff:fe00:12%15

• Zone IDs help uniquely distinguish which


link/subnet an interface is connected to

• To ping a remote IPv6 node, use your interface zone


ID (so that the response packet has a path)

14
Quiz - Zone ID
fe80::b1%12 PC-B
fe80::a1%20

PC-A

fe80::a2%18 fe80::c1%en0
PC-C

• Please write down the commands:


– PC-A ping PC-B
– PC-A telnet PC-C

15
Unique Local Unicast Addresses
• Similar to RFC1918 addresses (but within a “site”)
– Unique within a site
– Routable within site(s)
– Not ‘expected’ to be routed on the internet

FC00::/7

| 7 bits | 1 | 40 bits | 16 bits. | 64 bits |


+--------+--+--------------+------------+---------------------------+
| Prefix | L | Global ID | Subnet ID | Interface ID. |
+--------+--+--------------+------------+---------------------------+

L: 1 for local significance


Global ID: 40-bit pseudo-random

16
Modified EUI-64 format
• Allows IPv6 device to compute a
unique 64 bit Interface ID using
the interface MAC address (48 bit)
OUI NIC

– MAC address is split into two 24 bit


halves 00 21 2F 10 A2 48

• OUI and NIC

– Then 0xFFFE is inserted between the


two halves 00 21 2F FF FE 10 A2 48
• 0xFFFE is reserved value, not assigned to any
OEM
0000 0000
– Invert 7th
bit (U/L) of the OUI to get 0000 0010
the EUI-64 address
• addresses assigned to OEMs have this bit set
to 0 to indicate global uniqueness 02 21 2F FF FE 10 A2 48
• Set to 1 (invert 0) to indicate IEEE identifier
(MAC( is used, or 0 if otherwise
(serials/tunnels).

17
IPv6 Addressing EUI-64
LAN: 2001:db8:213:1::/64

Eth0

interface Ethernet0
ipv6 address 2001:db8:213:1::/64 eui-64 MAC address: 0060.3e47.1530

router# show ipv6 interface Ethernet0


Ethernet0 is up, line protocol is up
IPv6 is enabled, link-local address is FE80::260:3EFF:FE47:1530
Global unicast address(es):
2001:db8:213:1:260:3EFF:FE47:1530, subnet is 2001:db8:213:1::/64
Joined group address(es):
FF02::1:FF47:1530
FF02::1
FF02::2
MTU is 1500 bytes
IPv6 Interface ID – Privacy
• Overcome the ability to track (interface ID based on
MAC address):
– Temporary address (changes): outgoing connections RFC
– Secured address: incoming connection 4941
Temp > 2001:db8:a000:4:84a3:49b6:1919:26fb
Secured> 2001:db8:a000:4:aede:48ff:fe08:112
Temp > 2001:db8:a000:4:14e6:d4a3:815d:91dd

• Ease network management yet improve privacy:


– Stable interface identifiers for each subnet
Temp > 2001:db8:a000:4:84a3:49b6:1919:26fb RFC
7217
Secured> 2001:db8:a000:4:cbb:347c:6215:1083

19
Well-known Multicast Addresses
• Multicast addresses can only be destinations and never a
source
FF00::/8
• Pre-defined multicast addresses:
– FF02::1 All nodes multicast
• All IPv6 enabled devices join this multicast group
• Packets sent to this address is received by all nodes

– FF02::2 All routers multicast


• The moment IPv6 is enabled on a router (#ipv6 unicast-routing), the
router becomes a member of this group

– FF02::1:FFXX:XXXX/104 Solicited Node multicast


• NS messages (~ARP request) are sent to this address
• Uses the least significant 24-bits of its unicast/anycast address
• Must compute and join for every unicast (link-local & global) on a interface

20
Well-known Multicast Addresses
• Pre-defined multicast addresses:

– FF02::1:2 All DHCP Servers/Relay Agents


• Clients use this multicast address to discover any DHCPv6 servers/relays
on the local link (link-scoped)

– FF05::1:3 All DHCP servers


• Generally used by Relays to talk to servers
• Site-scoped

21
ICMPv6 Neighbor Discovery
• Router Solicitation (RS):
RFC
– sent by IPv6 host to "all routers" multicast to request RA 4861

• Router Advertisement (RA):


– sent by a IPv6 router to the "all nodes" multicast (200 secs)
– IPv6 prefix/prefix length, and default gateway

• Neighbor Solicitation (NS):


– sent by IPv6 host to the "solicited node" multicast to find the MAC
address of a given IPv6 address (~ARP request).

• Neighbor Advertisement (NA):


– sent in response to a NS and informs of its MAC address.

• ICMPv6 Redirect:
– informs the source of a better next-hop

22
IPv6 Neighbor Discovery (ND)
• Host A would like to communicate with Host B
– Global address 2406:6400::10
– Link-local fe80::226:bbff:fe06:ff81
– MAC address 00:26:bb:06:ff:81

• Host B IPv6 global address 2406:6400::20


– Link-local UNKNOWN (if GW outside the link)
– MAC address UNKNOWN

• How will Host A create L2 frame and send to Host


B?
IPv6 Neighbor Discovery (ND)

24
IPv6 Address Resolution

1 Multicast
ICMPv6 NS Type135

SMAC: 00:26:BB:06:FF:81 DMAC: 33:33:FF:00:00:20 RFC2464 – 33:33:xx:xx:xx:xx


Source IPv6: Destination IPv6:
2406:6400::0010 FF02:0:0:0:0:1:FF00:0020

Unicast 2
ICMPv6 NA Type136

SMAC: 00:26:BB:06:FF:82 DMAC: 00:26:BB:06:FF:81


Source IPv6: Destination IPv6:
2406:6400::0020 2406:6400::0010

25
IPv6 Address Resolution

3 Unicast
IPv6 Packet

SMAC: 00:26:BB:06:FF:81 DMAC: 00:26:BB:06:FF:82


Source IPv6: Dest IPv6:
2406:6400::0010 2406:6400::0020
Payload

Unicast 4
IPv6 Packet

SMAC: 00:26:BB:06:FF:82 DMAC: 00:26:BB:06:FF:81


Source IPv6: Dest IPv6:
2406:6400::0020 2406:6400::0010
Payload

26
Address Resolution Packets
• Click this link to check the address resolution packets
• https://www.cloudshark.org/captures/eb1b377ffcad

27
IPv6 Address Auto-configuration
• Stateless address auto-configuration (SLAAC)
– No manual configuration required
– Gets the IPv6 prefix and prefix length through RA (local
router)
– EUI-64 for interface ID (pseudo random)

• Stateful - DHCPv6
– To track address assignments

28
Stateless Address Autoconfig (1)
RFC
When a host joins a link/subnet: 2462

• It auto-generates a link-local using


the FE80::/10 prefix and EUI-64: FE80::346A:3BFF:FE76:CAF9

– Ex: FE80::346A:3BFF:FE76:CAF9

NS
• DAD is performed on the link-local:
– NS message is sent to the “solicited-
node” multicast (FF02::1:FF76:CAF9),
with ::/128 as the source

– If no NA message is received back, the


generated address is unique and can
be used

29
Stateless Address Autoconfig (2)

Once the node has a link-local address:


FE80::346A:3BFF:FE76:CAF9
• sends a RS message to the ”all-routers” 2001:DB8::346A:3BFF:FE76:CAF9
multicast (FF02::2)
– link-local as the source address

RS
• The router responds with a RA message 2001:DB8::/64
– IPv6 prefix and prefix length
– link-local as the source
– Auto flag by default (Managed and Other flags RA
are not set!)

• The node generates the IPv6 address


– uses the received prefix (2001:DB8::/64)
– Interface ID (EUI-64)
– 2001:DB8::346A:3BFF:FE76:CAF9
– DAD not necessary (link-local validated for the
same interface!)

30
DHCPv6 (1)
RFC
DHCPv6 is used: 3315

– If there are no router(s) on the subnet/link, OR


– If the RA message specifies to get addressing
information via DHCPv6

If the router’s RA message has the:

– O (other) flag set: stateless DHCPv6


• auto-generate IPv6 address using IPv6 prefix & prefix length in
the RA
• obtain other information (DNS server, domain) via DHCPv6

– M (managed) flag set:


• obtain all addressing information via DHCPv6
• ‘O’ flag is redundant

31
Stateful Autoconfig – DHCPv6 (2)
1. Client sends Solicit message to FF02::1:2 DHCPv6
to find any available DHCPv6 servers IPv6 Client Server

2. Server responds with an Advertise message Solicit


• the tentative IPv6 address/prefix
• Other parameters (DNS, domain, default
gateway, lease time) Advertise
• could receive multiple Advertise messages
Request
3. Client selects the server, and sends a
Request asking to formally request the Reply
indicated IPv6 address

4. Server responds with a Reply to confirm the


assignment

5. Performs DAD before using!

32
33

You might also like