NVR700WのポートベースVLANでIPv6を利用してみる

NVR700W

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をさしたところ,2001:db8:0:82のアドレスが割り当てられ,右から三番目(port 3)だと2001:db8:0:83のアドレスが割り当てられた.双方,実家側のサーバのグローバル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プロキシできるのだろう.

コメント

タイトルとURLをコピーしました