IPv6アドレスプレフィックスを委譲できる環境を(IX2215で)構築できたので,NVR700WのポートベースVLANを利用して,IPv6がどのように割り当てられるのか(各VLANに別プレフィックスのIPv6アドレスが割り当てられるのか),そしてちゃんとIPv6ルーティングできるのか調べてみた.
※2023/11/17 IPアドレスの一部を例示用IPアドレスへ変更
NVR700WでポートベースVLAN設定
初期化
NVR700Wを初期化するため以下のコマンドを実行する.
# cold start
以下のプロンプトが出たらadministratorのパスワードを入力する.
Password:
起動ログ
RTFS formatting..... Done.
Restarting ...
NVR700W BootROM Ver. 1.00
Copyright (c) 2016 Yamaha Corporation. All Rights Reserved.
Press 'Enter' or 'Return' to select a firmware and a configuration.
Default settings : exec0 and config0
Starting with default settings.
Starting with exec0 and config0 ...
NVR700W Rev.15.00.23 (Mon Jun 13 12:40:35 2022)
Copyright (c) 1994-2022 Yamaha Corporation. All Rights Reserved.
To display the software copyright statement, use 'show copyright' command.
00:
Memory 256Mbytes, 2LAN, 1ONU, 1WWAN
Password:
NVR700W Rev.15.00.23 (Mon Jun 13 12:40:35 2022)
Copyright (c) 1994-2022 Yamaha Corporation. All Rights Reserved.
To display the software copyright statement, use 'show copyright' command.
00:
Memory 256Mbytes, 2LAN, 1ONU, 1WWAN
The login password is factory default setting. Please request an administrator to change the password by the 'login password' command.
>
初期設定
sshログインできる環境設定.
login password *
administrator password *
login user root *
user attribute connection=serial,remote,http gui-page=dashboard login-timer=300 host=192.168.0.0
user attribute root connection=serial,telnet,remote,ssh,sftp,http gui-page=dashboard,lan-map,config login-timer=1800
console character en.ascii
console columns 200
console lines infinity
analog supplementary-service pseudo call-waiting
analog extension dial prefix sip prefix="9#"
sshd service on
sshd host key generate *
DHCP設定やDNS設定は削除しておく.
ポートベースVLAN設定
ポートベースVLANを設定するには以下のコマンドを実行する.これでLAN1の4ポートがvlan1からvlan4までの4つのVLANとして利用可能となる.
lan type lan1 port-based-option=divide-network
lan1の定義が自動的にvlan1に引き継がれる.
lan type lan1 port-based-option=divide-network
ip vlan1 address 192.168.100.1/24
vlan1~vlan4のポートは割り当てを変更することができる.なお,lan1.1はLAN1の一番左のポート,…,lan1.4はLAN1の一番右のポートをさす.vlan port mappingを明に行わない場合は,以下の定義が行われているものとして動作する.
vlan port mapping lan1.1 vlan1
vlan port mapping lan1.2 vlan2
vlan port mapping lan1.3 vlan3
vlan port mapping lan1.4 vlan4
DHCPv6-PDによる割り当ての場合
WANとvlan1の定義
まずvlan1のみにIPv6アドレスを割り当ててみよう.NVRに次のような定義を投入し,IX2215のポートとNVRのWANを接続してみる.なお,IXの定義はこちらのものを利用している.
ipv6 routing on
ipv6 route default gateway dhcp lan2
ipv6 prefix 1 dhcp-prefix@lan2::1/64
ipv6 prefix 2 dhcp-prefix@lan2::1:0:0:0:1/64
ipv6 prefix 3 dhcp-prefix@lan2::2:0:0:0:1/64
ipv6 prefix 4 dhcp-prefix@lan2::3:0:0:0:1/64
ipv6 prefix 5 dhcp-prefix@lan2::4:0:0:0:1/64
ipv6 vlan1 address dhcp-prefix@lan2::1:0:0:0:1/64
ipv6 vlan1 prefix dhcp-prefix@lan2::1:0:0:0:1/64
ipv6 vlan1 rtadv send 2 o_flag=on
ipv6 vlan1 dhcp service server
ip lan2 address dhcp
ipv6 lan2 address dhcp
ipv6 lan2 dhcp service client
以下のようになった.
# show ipv6 address
VLAN1 scope-id 1 [down]
Received: 129 packets 28869 octets
Transmitted: 12 packets 936 octets
global 2001:db8:0:81::1/64 (tentative)
global 2001:db8:0:81:vvvv:vvvv:vvvv:vvvv/64 (tentative)
(略)
LAN2 scope-id 2 [up]
Received: 13 packets 1130 octets
Transmitted: 6 packets 616 octets
global 2001:db8:0:80:vvvv:vvvv:vvvv:vvvv/60 (lifetime: 12587/14387)
(略)
ここまでは想定内.
vlan2~vlan4の定義
vlan2~vlan4にもipv6向けの以下の定義を設定してみる.
ipv6 vlan2 address dhcp-prefix@lan2::2:0:0:0:1/64
ipv6 vlan2 prefix dhcp-prefix@lan2::2:0:0:0:1/64
ipv6 vlan2 rtadv send 3 o_flag=on
ipv6 vlan2 dhcp service server
ipv6 vlan3 address dhcp-prefix@lan2::3:0:0:0:1/64
ipv6 vlan3 prefix dhcp-prefix@lan2::3:0:0:0:1/64
ipv6 vlan3 rtadv send 4 o_flag=on
ipv6 vlan3 dhcp service server
ipv6 vlan4 address dhcp-prefix@lan2::4:0:0:0:1/64
ipv6 vlan4 prefix dhcp-prefix@lan2::4:0:0:0:1/64
ipv6 vlan4 rtadv send 5 o_flag=on
ipv6 vlan4 dhcp service server
以下のようになった.
# show ipv6 address
VLAN1 scope-id 1 [down]
Received: 129 packets 28869 octets
Transmitted: 12 packets 936 octets
global 2001:db8:0:81::1/64 (tentative)
global 2001:db8:0:81:vvvv:vvvv:vvvv:vvvv/64 (tentative)
(略)
LAN2 scope-id 2 [up]
Received: 17 packets 1588 octets
Transmitted: 10 packets 1076 octets
global 2001:db8:0:80:vvvv:vvvv:vvvv:vvvv/60 (lifetime: 12592/14392)
(略)
ONU1 scope-id 3 [down]
Received: 0 packet 0 octet
Transmitted: 0 packet 0 octet
link-local ff02::1/64
link-local ff02::2/64
VLAN2 scope-id 5 [down]
Received: 1 packet 109 octets
Transmitted: 0 packet 0 octet
global 2001:db8:0:82::1/64 (tentative)
global 2001:db8:0:82:vvvv:vvvv:vvvv:vvvv/64 (tentative)
(略)
VLAN3 scope-id 6 [down]
Received: 0 packet 0 octet
Transmitted: 0 packet 0 octet
global 2001:db8:0:83::1/64 (tentative)
global 2001:db8:0:83:vvvv:vvvv:vvvv:vvvv/64 (tentative)
(略)
VLAN4 scope-id 7 [down]
Received: 174 packets 38138 octets
Transmitted: 0 packet 0 octet
global 2001:db8:0:84::1/64 (tentative)
global 2001:db8:0:84:vvvv:vvvv:vvvv:vvvv/64 (tentative)
(略)
意図どおりの割り当てになっているようだ.これで通信ができればいいが…結果は?
疎通確認
LAN1ポートの右から二番目(port 2)にPCをさしたところ,xxxx:yyyy:zzzz:ww82のアドレスが割り当てられ,右から三番目(port 3)だとxxxx:yyyy:zzzz:ww83のアドレスが割り当てられた.双方,実家側のサーバのグローバルIPv6アドレスに向けてssh接続が可能であった.その後,port 1とport 4にPCを接続しそれぞれのIPv6アドレスにpingを投げたところそれぞれ応答があった.(IPv4に関しては,リンクローカルアドレスが設定されていた)
なお,その時の経路情報は以下のとおり.
# show ipv6 route
Destination Gateway Interface Type
default fe80::vvvv:vvvv:vvvv:vvvv LAN2(DHCP) static
2001:db8:0:80::/60 - LAN2 implicit
2001:db8:0:81::/64 - VLAN1 implicit
2001:db8:0:82::/64 - VLAN2 implicit
2001:db8:0:83::/64 - VLAN3 implicit
2001:db8:0:84::/64 - VLAN4 implicit
#
結論
DHCPv6-PDとポートベースVLANの組合せは問題なく動作する.ただし,ここからMAP-EやDS-Liteのトンネルを掘れるかどうかは未検証.
RAによる割り当ての場合
RAによる割り当てだから/64のプレフィックスを一つしかもらえないんだから,4つのVLANに割当ることってどうしても無理だと思う.おそらく,どれか一つのVLANにNDプロキシできるのだろう.
コメント