Top Banner
NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin
22

NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Dec 23, 2015

Download

Documents

Homer Day
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

NAT64

marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum

IETF 72 - Dublin

Page 2: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Application scenario

IPv6Only host

IPv6Only host

IPv4OnlyHost

IPv4OnlyHost

NAT64

-Communications initiated by the v6-only host-Compatible with ICE-No support for communications initiated by the v4 only side without previous action from the v6 side (i.e. No support for v6 only servers, beyond the creation of static mappings)-No changes required in any host for basic functionality-Supports communications initiated using the FQDN (of the v4 node) using DNS64

Page 3: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Overview

NAT64

v6

v4

DNS64 DNS

H6IP6

H4IP4

IPT

AAAA RR for FQDN(H4) ?

Page 4: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Overview

NAT64

v6

v4

DNS64 DNS

H6IP6

H4IP4

IPT

AAAA RR for FQDN(H4) ?

AAAA RR for FQDN(H4) ?

Page 5: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Overview

NAT64

v6

v4

DNS64 DNS

H6IP6

H4IP4

IPT

AAAA RR for FQDN(H4) ?

AAAA RR for FQDN(H4) ?

enpty

Page 6: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Overview

NAT64

v6

v4

DNS64 DNS

H6IP6

H4IP4

IPT

AAAA RR for FQDN(H4) ?

A RR for FQDN(H4) ?

Page 7: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Overview

NAT64

v6

v4

DNS64 DNS

H6IP6

H4IP4

IPT

AAAA RR for FQDN(H4) ?

A RR for FQDN(H4) ?

IP4

Page 8: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Overview

NAT64

v6

v4

DNS64 DNS

H6IP6

H4IP4

IPT

Synthetizes AAAA RR as

Pref::/96+IPv4

Synthetizes AAAA RR as

Pref::/96+IPv4

Page 9: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Overview

NAT64

v6

v4

DNS64 DNS

H6IP6

H4IP4

IPT

AAAA RR Pref:IP4

Page 10: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Overview

NAT64

v6

v4

DNS64 DNS

H6IP6

H4IP4

IPT

Src: IP6,sDest: Pref:IP4,d

Src: IP6,sDest: Pref:IP4,d

Page 11: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Overview

NAT64

v6

v4

DNS64 DNS

H6IP6

H4IP4

IPT

IP6,s<->T,t

IP6,s<->T,t

Page 12: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Overview

NAT64

v6

v4

DNS64 DNS

H6IP6

H4IP4

IPT

Src: T,tDest: IP4,d

Src: T,tDest: IP4,d

Page 13: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Comparison with NATPT (RFC2766)• NAT64 only supports v6 initiated communications

– NATPT supports both v4 and v6 initiated, requiring a set of cumbersome techniques

• NAT64 and DNS64 are completelly decoupled– No relation between the NAT64 state and the synthetic RR– DNS64 preserves DNS semantics, DNS responses are valid

irrespectivly of the path used by data packets • NAT64 allows to preffer native connectivity over translated

connectivity• NAT64 is compatible with DNSSec• NAT64 supports some modes of IPSec• NAT64 is fully specified, compatible with behave

requirements

Page 14: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

A couple of design questions

Page 15: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

What prefix to use to map v4 addresses in v6 land?

• Option 1: Local prefix– We use a prefix /96 obtained from the site’s block– Differnet prefixes for different nat64 boxes in the

same site

• Option 2: global prefix– Candidates:• V4mapped prefix• V4compatible prefix• A new global prefix assigned by IANA

Page 16: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Implication 1: global translated addresses

• If we use a global prefix, we have a globally unique RR that represent translated addresses

• Less problems with DNS, DNSSec• No need to configure the local prefix in DNS64

Page 17: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Implication 2: communication with dual stack

• Local Prefix: Translated addresses are represented as one of the site’s address– Need other means to distinguish them: EDNS0

optionOnly upgraded dual stack can use it: apps that break

with nats may break

NAT64

v6

v4

DNS64

DNS

H6IP6

H4IP4

IPT

AAAA RR Pref:IP4EDNS0

Page 18: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Implication 2: Communications with dual stack

• Global prefix:– V4mapped prefix:

• Automatically less preferred due to rfc3484 policy• Windows vista, Macos, Linux, don’t use it on the wire

– V4 compatible prefix• Automatcially less preferred compared to native v6, but more

preferred than v4 (represented as v4 mapped)• Windows vista, macos, linux send packets to this prefix

– Other global prefix from IANA• More rpeferred than v4• Longest prefix match rule in rfc3484 could help (if not deprecated)

Page 19: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Implication 3: routing fluctuations

• Failure in intra site routing fluctuations

NAT64_1

v6

v4

DNS64DNS

H6IP6

H4IP4

NAT64_2

Page 20: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Implication 3: routing fluctuations

• Failure in intra site routing fluctuations

NAT64_1

v6

v4

DNS64DNS

H6IP6

H4IP4

NAT64_2

Page 21: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Implication 3: routing fluctuations

• Failure in intra site routing fluctuations

NAT64_1

v6

v4

DNS64DNS

H6IP6

H4IP4

NAT64_2

Page 22: NAT64 marcelo bagnulo, Philip Matthews, Iljitsch van Beijnum IETF 72 - Dublin.

Endpoint independence vs. Higher utilization of v4 addresses

• Endpoint independence requires mappings are: (srcIP6,srcp)<->(T,t)

• Address and port dependent mapping are: (srcIP6,srcp,dstIP6,dstp)<->(T,t,dstIP4,dstp’)

• Can we afford endpoint independence in v6?