SAM: Stateless Address Mapping...SAM: Stateless Address Mapping ~IPv6時代のIPv4を考える~...

Preview:

Citation preview

SAM: Stateless Address Mapping

~IPv6時代のIPv4を考える~

松嶋 聡

ソフトバンクテレコム

6rdの経験から

• IPv4アドレスは、タダのインターナルIDになった

• 6rd ボーダールータはIPv6宛先アドレスから自動的にカプセル化IPv4宛先アドレスを導く

• 6rd CEは設定されたIPv4アドレスから自動的にDelegated Prefixを導く

• 6rdはコスト的に非常に有利なので、この原理の適用先を広げたい

なぜステートレスがよい?

IPv4 InternetIPv4 Internet IPv4 InternetIPv4 Internet

IPv6

トラフィック量に応じた設備投資ユーザー/セッション数に応じた設備投資

IPv6

Point-to-Point NBMA

ステートレスステートフルステートフル

6rd

SP’s IPv6prefix IPv4 Local

Site Interface ID

IPv4

もしも上下逆転が可能ならIPv4 over IPv6

SP’s IPv6prefix IPv4 Local

Site Interface ID

IPv4

そんなにうまくは行かない

ユーザーユニーク部LocalSite Interface IDSP’s IPv6

prefix

SP’s v4prefix

ユーザーユニーク部

はみ出る

解決策その1

ユーザーユニーク部LocalSite Interface IDSP’s IPv6

prefix

SP’s v4prefix

ユーザーユニーク部 ?

32bit 上

v4アドレス共通部を追い出す

解決策その2

ユーザーユニーク部LocalSite Interface IDSP’s IPv6

prefix

SP’s v4prefix

ユーザーユニーク部

32bit

?TCP/UDPPort

空いたビットをポート番号でうめる

Stateless Address Mapping for IPv4 over IPv6

ISP’sprefix

ユーザーユニーク部

48bit(IPv4 + Port)

SP’s IPv6prefix ユーザーユニーク部

localsite Interface ID

TCP/UDPPort

16bit32bit上

IPv4アドレス共有

Example Configurations

SP’s IPv6 access NW2400:2400::/24

IPv4

tunnel0

tunnel0

2400:2401::1

2400:24AB:CDEF::1

Border Relay Router

CPE

10.0.0.1

Tunnel0 address=10.255.255.254/32

Tunnel0 address=UnnumberedBorder Relay = 2400:2401::1

SP IPv4 Prefix = 10.255.0.0/16

LAN address =192.168.3.1/24

192.168.3.10/24

- Define IPv4 global address and NAPT ports,

consist of SP’s IPv6 address- Encapsulate by IPv6 packet

appropriately

IPv4 address: 10.255.AB.CDNAPT ports: 0xEF00~0xEFFF

IPv4 routing table

10.255.0.0/16 => tunnel0Default => 10.0.0.2

IPv4 routing table

...10.255.0.0/16 => 10.0.0.1

...

DHCP-PD

1つのIPv4アドレスを

256人で共有

Example behavior - Upstream-

SP’s IPv6 access NW2400::2400/24

IPv4

2400:2401::1

10.0.0.1

SP IPv4 Prefix = 10.255.0.0/16

192.168.3.10/24

- Define IPv4 global address and NAPT ports,

consist of SP’s IPv6 address- Encapsulate by IPv6 packet

appropriately

IPv4 address: 10.255.AB.CDNAPT ports: 0xEF00~0xEFFF

IPv4 routing table

10.255.0.0/16 => tunnel0Default => 10.0.0.2

IPv4 routing table

...10.255.0.0/16 => 10.0.0.1

...

Packet IPv4

Dst=1.1.1.1:80Src=192.168.3.10:1024

TCP

Packet IPv4TCP IPv6

Dst=1.1.1.1:80Src=10.255.AB.CD:0xEF00

Dst=2400:2401::1Src=2400:24AB:CDEF::1

Packet IPv4

Dst=1.1.1.1:80Src=10.255.AB.CD:0xEF00

TCP

tunnel0

tunnel0

Border Relay RouterTunnel0 address=10.255.255.254/32

NAPT LAN address =192.168.3.1/2

CPE

Example behavior - Downstream -

SP’s IPv6 access NW2400:2400::/24

IPv4

2400:2401::1

10.0.0.1

SP IPv4 Prefix = 10.255.0.0/16

192.168.3.10/24

Packet IPv4

Dst=192.168.3.10:1024Src=1.1.1.1:80

TCPNAPT

Packet IPv4TCP IPv6Dst=2400:24AB:CDEF::1Src=2400:2401::1

Packet IPv4

Dst=10.255.AB.CD:0xEF00Src=1.1.1.1:80

TCP

Dst=10.255.AB.CD:0xEF00Src=1.1.1.1:80

tunnel0

tunnel0

Border Relay RouterTunnel0 address=10.255.255.254/32

LAN address =192.168.3.1/2

CPE

- Define IPv4 global address and NAPT ports,

consist of SP’s IPv6 address- Encapsulate by IPv6 packet

appropriately

IPv4 address: 10.255.AB.CDNAPT ports: 0xEF00~0xEFFF

IPv4 routing table

10.255.0.0/16 => tunnel0Default => 10.0.0.2

IPv4 routing table

...10.255.0.0/16 => 10.0.0.1

...

Example behavior - Upstream(2)

SP’s IPv6 access NW2400::2400/24

IPv4

2400:2401::1

10.0.0.1

192.168.3.10/24

IPv4 address: 10.255.AB.CDNAPT ports: 0xEF00~0xEFFF

IPv4 routing table

10.255.0.0/16 => tunnel0Default => 10.0.0.2

IPv4 routing table

...10.255.0.0/16 => 10.0.0.1

...

Packet IPv4

Dst=10.255.27.36:66Src=192.168.3.10:1024

TCP

Packet IPv4TCP IPv6

Dst=10.255.27.36:66Src=10.255.AB.CD:0xEF00

Dst=2400:241B:2442::1Src=2400:24AB:CDEF::1

tunnel0

tunnel0

Border Relay RouterTunnel0 address=10.255.255.254/32

NAPT

CPE

SP IPv4 Prefix = 10.255.0.0/16

Hex : 1B 24 42

サマリ• 6rd著者(Rémi Després)によるSAMの詳細は、以下のI-Dにあり

ます

“draft-despres-softwire-sam”

• 6rdの原理をIPv4 over IPv6にも適用すると、1つのIPv4アドレスを複数ユーザーが共有することも可能

• CPEはIPv4アドレスと利用可能なポート番号を自動的に導く

• ボーダールータはIPv4宛先アドレス,ポート番号から自動的にカプセル化IPv6宛先アドレスを導く

• NATはCPEの1段のみ。ボーダールータはNATステートなしもちろんトンネルもステートレス

Recommended