IPv4 のインターネット接続で一般的に行われるグローバルアドレスとプライベートアドレス (192.168.0.0/16) の変換である NAT44 と同様に、 IPv6 で ISP からアサインされるグローバルユニキャストアドレスとユニークローカルアドレス (fc00::/7) を NAT66 にて変換する。
また、この時 IPv4 で一般的に使用される Masquerade (NAPT) を IPv6 でも同様に行う。
IPv6 接続構成
Internet 側の IPv6 アドレスは ISP からの RA にて SLAAC でアドレス、デフォルトゲートウェイ、 DNS Server を自動構成する。LAN 側は VyOS にてリンクローカルアドレスを RA で Prefix, DNS Server それぞれ通知し、PC 側で SLAAC による IPv6 の自動構成をできるようにする。
VyOS (1.4 系) のコンフィグ例
interfaces {
ethernet eth0 {
description Internet
ipv6 {
address {
autoconf
}
}
mtu 1440
}
ethernet eth1 {
address fd00:0:0:f0::ffff/64
description LAN
}
}
nat66 {
source {
rule 100 {
outbound-interface eth0
source {
prefix fd00::/8
}
translation {
address masquerade
}
}
}
}
service {
dns {
forwarding {
allow-from fd00::/8
dnssec off
listen-address fd00:0:0:f0::ffff
system
}
}
router-advert {
interface eth1 {
link-mtu 1440
name-server fd00:0:0:f0::ffff
prefix fd00:0:0:f0::/64 {
}
}
}
}
【参考URL】
PPPoE IPv6 Basic Setup for Home Network
NAT66(NPTv6)
VyOS1.4ではIPv6のIPマスカレードが可能だった
Fortigate (FortiOS 6.2) のコンフィグ例
VyOS の場合と同等の構成での設定例は以下となる。
config firewall address6
edit "ipv6_private"
set ip6 fd00::/8
next
end
config firewall policy6
edit 1
set name "NAT66"
set srcintf "lan1"
set dstintf "wan1"
set srcaddr "ipv6_private"
set dstaddr "all"
set action accept
set schedule "always"
set service "ALL"
set nat enable
next
end
config system interface
edit "wan1"
set vdom "root"
set type physical
set role wan
config ipv6
set ip6-allowaccess ping https ssh
set autoconf enable
end
set mtu-override enable
set mtu 1440
next
edit "lan1"
set vdom "root"
set type physical
set role lan
config ipv6
set ip6-address fd00:0:0:f0::ffff/64
set ip6-allowaccess ping https ssh
set ip6-send-adv enable
set ip6-link-mtu 1440
config ip6-prefix-list
edit fd00:0:0:f0::/64
set autonomous-flag enable (FortiOS 6.0では必要)
set onlink-flag enable (FortiOS 6.0では必要かも?)
set rdnss fd00:0:0:f0::ffff
next
end
end
next
end
【参考URL】
Getting a FortiGate to send IPv6 Router Advertisements