Sunset New York
Date/Time: 2006:08:05 19:36:06
Camera: FUJIFILM
Model: FinePix F401
Exporsure Time: 1/640 [s]
FNumber: 7.0
Aperture Value: 5.6
Focal Length: 5.7 [mm]

y2blog » v6プラスサービスで固定IPとMAP-Eによるマルチホーム化を試みる(その1)

12

13

2025

v6プラスサービスで固定IPとMAP-Eによるマルチホーム化を試みる(その1)

インターネット接続をマルチホーム化して業務用とプライベート用とで使い分ける


以前Tarnsixのサービスで実装したデュアルホームネットワークに関する記事『Transixサービスで固定IPとDS-Liteによるマルチホーム化を試みる』と同じ内容を、JPIXのv6プラスサービスで実装する方法について検証してみた.


Transixを用いて実装する場合と比べて、JPIXのv6プラスの方がマルチホームインターネット環境の実装が難しく、ちょっとした試行錯誤が必要だったので、その辺の事由について簡単に紹介する.


今回v6プラスサービスによるデュアルホームインターネット接続のイメージを次に示す.


v6Plus dual home network
v6プラスサービスで構成するデュアルホームインターネット接続環境のイメージ

v6プラスサービスでは、MAP-E、固定IPともにSubnet IDの値を0にしなければならない問題が発生


FLET’Sクロスサービスやひかり電話契約有りのFLET’Sネクストサービスでは、ユーザに払い出されるIPv6 prefix長が56bitsなので、残りの8bits分をユーザが任意に分割して配下のネットワークに割り振ることが可能だ.この8bitsの領域は、Subnet ID と呼ばれていて、FLET’Sの場合最大256まで配下のネットワークを分割可能だ.


Subnet IDはユーザが自由に使える筈なのだが、何故かFLET’S系のIPoEサービスではユーザが Subnet ID を使ってネットワークを分割すると固定IP系のサービスが使えなくなってしまう.TransixやXPassの固定IP系のサービスではSubnet IDに0以外を指定するとIPv4の固定IPサービスが使えなかった.


今回、v6プラスサービスでも同じ現象に悩まされてしまった.v6プラスサービスでは固定IPサービスだけではなく、MAP-Eのサービスまで全滅だった.尤もMAP-Eのサービスは、IPv6トンネルの使い方は固定IPサービスと同じ両方向の通信が必要なので、実質的には固定IP方式と同じだ.


固定IPサービスとMAP-Eサービスのどちらか一方しか利用しないのであれば、IPv6 prefixのSubnet IDが0であっても実際の運用では特に支障はない.今回のように、固定IPとMAP-Eを両方併用してデュアルホーム接続を行おうとするとこの制約が大きな支障となる.


とりあえず、MAP-Eと固定IPの接続設定を単独で設定して、Subnet IDに0以外の値を設定した場合の振る舞いを調べてみることにする.


MAP-E の場合


NECの『UNIVERGE IXシリーズ 技術情報』から、「v6プラス (MAP-E方式) 設定ガイド」の内容をほぼそのまま忠実にIX-2215に設定してみる.勿論、この場合は何の問題なく想定通りの結果が得られる.



 ...

ip ufs-cache max-entries 20000
ip ufs-cache enable
ip route default Tunnel0.0
ip dhcp enable
!
ipv6 ufs-cache max-entries 10000
ipv6 ufs-cache enable
ipv6 dhcp enable
!
ipv6 access-list block-list deny ip src any dest any
ipv6 access-list dhcpv6-list permit udp src any sport any dest any dport eq 546
ipv6 access-list dhcpv6-list permit udp src any sport any dest any dport eq 547
ipv6 access-list icmpv6-list permit icmp src any dest any
ipv6 access-list tunnel-list permit 4 src any dest any
ipv6 access-list other-list permit ip src any dest any
ipv6 access-list dynamic cache 65535
ipv6 access-list dynamic dflt-list access other-list
!
proxy-dns ip enable
proxy-dns ip request both
!
ip dhcp profile dhcpv4-sv
  dns-server 192.168.1.1
!
ipv6 dhcp client-profile dhcpv6-cl
  option-request dns-servers
  ia-pd subscriber GigaEthernet1.0 ::/64 eui-64   <=== Subnet ID は 0
!
ipv6 dhcp server-profile dhcpv6-sv
  dns-server dhcp
!
interface GigaEthernet0.0
  no ip address
  ipv6 enable
  ipv6 traffic-class tos 0
  ipv6 dhcp client dhcpv6-cl
  ipv6 filter dhcpv6-list 1 in
  ipv6 filter icmpv6-list 2 in
  ipv6 filter tunnel-list 3 in
  ipv6 filter block-list 100 in
  ipv6 filter dhcpv6-list 1 out
  ipv6 filter icmpv6-list 2 out
  ipv6 filter tunnel-list 3 out
  ipv6 filter dflt-list 100 out
  no shutdown
!
interface GigaEthernet1.0
  ip address 192.168.1.1/24
  ip dhcp binding dhcpv4-sv
  ipv6 enable
  ipv6 dhcp server dhcpv6-sv
  ipv6 nd ra enable
  ipv6 nd ra other-config-flag
  no shutdown
!
interface Tunnel0.0
  tunnel mode map-e
  ip address map-e
  ip tcp adjust-mss auto
  ip napt enable
  no shutdown
!



ix2215-01(config)# show ipv6 addr
Interface GigaEthernet0.0 is up, line protocol is up
  Global address(es):
    240b:xxxx:yyyy:f400:: prefixlen 56 anycast
  Link-local address(es):
    fe80::260:b9ff:fee2:4624 prefixlen 64
    fe80:: prefixlen 64 anycast
  ...

Interface GigaEthernet1.0 is up, line protocol is up
  Global address(es):
    240b:xxxx:yyyy:f400:6a:zzzz:6c00:f400 prefixlen 64 tentative
    240b:xxxx:yyyy:f400:260:b9ff:fee2:46a4 prefixlen 64
      Valid lifetime 14369, preferred lifetime 12569
    240b:xxxx:yyyy:f400:: prefixlen 64 anycast
  Link-local address(es):
    fe80::260:b9ff:fee2:46a4 prefixlen 64
    fe80:: prefixlen 64 anycast
  ...

ix2215-01(config)# show map status
Tunnel interface: Tunnel0.0
  Vendor Name: JPIX
  Status: active
  Transport information:
    CE IPv4 address is 106.XX.YY.108/32
    CE IPv6 address is 240b:xxxx:yyyy:f400:6a:zzzz:6c00:f400/64
  NAPT translation port:
    8000-8015, 12096-12111, 16192-16207
    20288-20303, 24384-24399, 28480-28495
    32576-32591, 36672-36687, 40768-40783
    44864-44879, 48960-48975, 53056-53071
    57152-57167, 61248-61263, 65344-65359
  Request statistics:
    Last Request: -
    Last Update : -
    0 request, 0 success, 0 failure
ix2215-01(config)#       

ix2215-01(config)# show int Tunnel0.0
Interface Tunnel0.0 is up
  Fundamental MTU is 1460 octets
  Current bandwidth 1G b/s, QoS is disabled
  Datalink header cache type is ipv6-tunnel: 0/0 (standby/dynamic)
  IPv4 subsystem connected, physical layer is up, 0:01:13
  Dialer auto-connect is enabled
  Inbound call is enabled
  Outbound call is enabled
  Dial on demand restraint is disabled, 0 disconnect
  SNMP MIB-2:
    ifIndex is 1208
  Logical INTERFACE:
    Elapsed time after clear counters 0:01:56
    6 packets input, 576 bytes, 0 errors
      6 unicasts, 0 non-unicasts, 0 unknown protos
      0 drops, 0 misc errors
    1 output requests, 116 bytes, 0 errors
      1 unicasts, 0 non-unicasts
      0 overflows, 0 neighbor unreachable, 0 misc errors
    1 link-up detected, 0 link-down detected
  Encapsulation TUNNEL:
    Tunnel mode is map-e
    Tunnel is ready
    Destination address is 2404:9200:225:100::64
    Source address is 240b:xxxx:yyyy:f400:6a:zzzz:6c00:f400
    Nexthop address is fe80::d677:98ff:fe1c:6f53
    Outgoing interface is GigaEthernet0.0
    Interface MTU is 1460
    Path MTU is 1500
    Tunnel-link cache:
      d4:77:98:1c:6f:53:00:60:b9:e2:46:24:86:dd
    NAPT translation port:
      8000-8015, 12096-12111, 16192-16207
      20288-20303, 24384-24399, 28480-28495
      32576-32591, 36672-36687, 40768-40783
      44864-44879, 48960-48975, 53056-53071
      57152-57167, 61248-61263, 65344-65359
    Statistics:
      34 packets input, 8668 bytes, 0 errors
      41 packets output, 13905 bytes, 0 errors
    Received ICMP messages:
      0 errors
ix2215-01(config)# 


MAP-E JPIX Test
JPIXの接続テストページでMAP-Eのアドレスとポートを確認

実際にIPv4接続で用いられているポート番号が、使用可能なポート番号に含まれていることが確認できる.


この設定ではsubnet IDが 0 なので、今回の用途では不都合があるのでsubnet IDの値を0以外の "c8" (VLAN IDの200) に設定してみる.




ipv6 dhcp client-profile dhcpv6-cl
  option-request dns-servers
  ia-pd subscriber GigaEthernet1.0   ::c8:0:0:0:fe/64  <=== Subnet ID は "c8" (200d)
!

ix2215-01(config)# show ipv6 addr
Interface GigaEthernet0.0 is up, line protocol is up
  Global address(es):
    240b:xxxx:yyyy:f400:: prefixlen 56 anycast
  Link-local address(es):
    fe80::260:b9ff:fee2:4624 prefixlen 64
    fe80:: prefixlen 64 anycast
 ...

Interface GigaEthernet1.0 is up, line protocol is up
  Global address(es):
    240b:xxxx:yyyy:f4c8::fe prefixlen 64
      Valid lifetime 14386, preferred lifetime 12586
    240b:xxxx:yyyy:f4c8:: prefixlen 64 anycast
  Link-local address(es):
    fe80::260:b9ff:fee2:46a4 prefixlen 64
    fe80:: prefixlen 64 anycast
  ...
ix2215-01(config)# show map status   <=== MAP-Eの設定に失敗している
Tunnel interface: Tunnel0.0
  Vendor Name: JPIX
  Status: waiting
  Request statistics:
    Last Request: -
    Last Update : -
    0 request, 0 success, 0 failure
ix2215-01(config)#   



上記の結果から、Subnet IDに 0 以外の値を指定するとv6プラスのMAP-Eは動作しないようだ.v6プラスのBRが当方のルータのIPv6アドレスと通信できないのか、それともマップルールサーバとの接続に失敗しているのかは不明だが、IPv6トンネルのアドレスは "240b:xxxx:yyyy:f400:6a:zzzz:6c00:f400" でなくてはいけないようだ.


Subnet IDの0以外の値を設定した場合にはインタフェースのIPv6アドレスは "240b:xxxx:yyyy:f4c8::fe/64" となるが、一つのインタフェースに対してIPv6アドレスは複数設定できるので、MAP-E用のアドレス "240b:xxxx:yyyy:f400:6a:zzzz:6c00:f400/64" を固定設定で与えてみて、MAP-Eの接続を検証してみた.




ipv6 dhcp client-profile dhcpv6-cl
  option-request dns-servers
  ia-pd subscriber GigaEthernet1.0   ::c8:0:0:0:fe/64   <=== Subnet ID は "c8" (200d)
!
 ...

interface GigaEthernet1.0
  ip address 192.168.1.1/24
  ip dhcp binding dhcpv4-sv
  ipv6 enable
  ipv6 address 240b:xxxx:yyyy:f400:6a:zzzz:6c00:f400/64  <=== MAP-E用のIPv6トンネルアドレスを追加
  ipv6 dhcp server dhcpv6-sv
  ipv6 nd ra enable
  ipv6 nd ra other-config-flag
  no shutdown
! 


ix2215-01(config)# show  ipv6 addr
Interface GigaEthernet0.0 is up, line protocol is up
  Global address(es):
    240b:xxxx:yyyy:f400:: prefixlen 56 anycast
  Link-local address(es):
    fe80::260:b9ff:fee2:4624 prefixlen 64
    fe80:: prefixlen 64 anycast
 ...

Interface GigaEthernet1.0 is up, line protocol is up
  Global address(es):
    240b:xxxx:yyyy:f400:6a:zzzz:6c00:f400 prefixlen 64  <=== 追加したIPv6トンネルアドレス
    240b:xxxx:yyyy:f4c8::fe prefixlen 64                <=== インタフェースのIPv6アドレス
      Valid lifetime 14365, preferred lifetime 12565
    240b:xxxx:yyyy:f400:: prefixlen 64 anycast
    240b:xxxx:yyyy:f4c8:: prefixlen 64 anycast
  Link-local address(es):
    fe80::260:b9ff:fee2:46a4 prefixlen 64
    fe80:: prefixlen 64 anycast

ix2215-01(config)# show map status
Tunnel interface: Tunnel0.0
  Vendor Name: JPIX
  Status: active
  Transport information:
    CE IPv4 address is 106.XX.YY.108/32
    CE IPv6 address is 240b:xxxx:yyyy:f400:6a:zzzz:6c00:f400/64
  NAPT translation port:
    8000-8015, 12096-12111, 16192-16207
    20288-20303, 24384-24399, 28480-28495
    32576-32591, 36672-36687, 40768-40783
    44864-44879, 48960-48975, 53056-53071
    57152-57167, 61248-61263, 65344-65359
  Request statistics:
    Last Request: -
    Last Update : -
    0 request, 0 success, 0 failure

ix2215-01(config)# show int Tunnel0.0
Interface Tunnel0.0 is up
  Fundamental MTU is 1460 octets
  Current bandwidth 1G b/s, QoS is disabled
  Datalink header cache type is ipv6-tunnel: 1/0 (standby/dynamic)
  IPv4 subsystem connected, physical layer is up, 0:00:29
  Dialer auto-connect is enabled
  Inbound call is enabled
  Outbound call is enabled
  Dial on demand restraint is disabled, 0 disconnect
  SNMP MIB-2:
    ifIndex is 1208
  Logical INTERFACE:
    Elapsed time after clear counters 0:01:13
    31 packets input, 8441 bytes, 0 errors
      31 unicasts, 0 non-unicasts, 0 unknown protos
      0 drops, 0 misc errors
    44 output requests, 14291 bytes, 0 errors
      44 unicasts, 0 non-unicasts
      0 overflows, 0 neighbor unreachable, 0 misc errors
    1 link-up detected, 0 link-down detected
  Encapsulation TUNNEL:
    Tunnel mode is map-e
    Tunnel is ready
    Destination address is 2404:9200:225:100::64
    Source address is 240b:xxxx:yyyy:f400:6a:zzzz:6c00:f400
    Nexthop address is fe80::d677:98ff:fe1c:6f53
    Outgoing interface is GigaEthernet0.0
    Interface MTU is 1460
    Path MTU is 1500
    Tunnel-link cache:
      d4:77:98:1c:6f:53:00:60:b9:e2:46:24:86:dd
    NAPT translation port:
      8000-8015, 12096-12111, 16192-16207
      20288-20303, 24384-24399, 28480-28495
      32576-32591, 36672-36687, 40768-40783
      44864-44879, 48960-48975, 53056-53071
      57152-57167, 61248-61263, 65344-65359
    Statistics:
      31 packets input, 8441 bytes, 0 errors
      44 packets output, 14291 bytes, 0 errors
    Received ICMP messages:
      0 errors
ix2215-01(config)#  


IPv6 Test
外部のIPv6テストページで当方のIPv6アドレスを確認してみる

Client PC IPv6 Addrress
配下のPCには2系統のIPv6 prefixが割り当てられていて、リストの上位が優先される模様

この方法だと、MAP-Eが正常に動作することが確認できたが、IPv6で外部のサイトに接続する際に、本来の "240b:xxxx:yyyy:f40c8::/64" ではなく、"240b:xxxx:yyyy:f400::/64" のアドレスからの接続となってしまう.配下のPCに割り振られたIPV6アドレスの優先順位が "240b:xxxx:yyyy:f400::/64" の方が上位になっているのが原因のようだ.


"240b:xxxx:yyyy:f40c9::/64" の優先順位を"240b:xxxx:yyyy:f400::/64"よりも上げる方法があればこの問題は解決しそうだ.NECのIXシリーズのマニュアルをじっくりと眺めて、IPv6 prefix割当の優先順位を変更する方法が有りそうだが、とりあえず IPv6アドレスを手動で固定設定した方のprefixが優先されるようなので、次のように設定を変更したら、クライアントPCからの接続は"240b:xxxx:yyyy:f40c8::/64"が優先的に使われるようになった.






ipv6 dhcp client-profile dhcpv6-cl
  option-request dns-servers
  ia-pd subscriber GigaEthernet1.0 ::/64 eui-64     <=== Subnet ID を 0 に設定
!

interface GigaEthernet1.0
  ip address 192.168.1.1/24
  ip dhcp binding dhcpv4-sv
  ipv6 enable
  ipv6 address 240b:xxxx:yyyy:f4c8::fe/64   <=== 固定アドレスの"240b:xxxx:yyyy:f4c8::/64"を追加
  ipv6 dhcp server dhcpv6-sv
  ipv6 nd ra enable
  ipv6 nd ra other-config-flag
  no shutdown
!
-------------

ix2215-01(config)# show ipv6 addr
Interface GigaEthernet0.0 is up, line protocol is up
  Global address(es):
    240b:xxxx:yyyy:f400:: prefixlen 56 anycast
  Link-local address(es):
    fe80::260:b9ff:fee2:4624 prefixlen 64
    fe80:: prefixlen 64 anycast
  ...

 Interface GigaEthernet1.0 is up, line protocol is up
  Global address(es):
    240b:xxxx:yyyy:f400:6a: zzzz:6c00:f400 prefixlen 64
    240b:xxxx:yyyy:f400:260:b9ff:fee2:46a4 prefixlen 64
      Valid lifetime 12110, preferred lifetime 10310
    240b:xxxx:yyyy:f4c8::fe prefixlen 64
    240b:xxxx:yyyy:f400:: prefixlen 64 anycast
    240b:xxxx:yyyy:f4c8:: prefixlen 64 anycast
 ...

ix2215-01(config)# show map status
Tunnel interface: Tunnel0.0
  Vendor Name: JPIX
  Status: active
  Transport information:
    CE IPv4 address is 106.XX.YY.108/32
    CE IPv6 address is 240b:xxxx:yyyy:f400:6a:zzzz:6c00:f400/64
  NAPT translation port:
    8000-8015, 12096-12111, 16192-16207
    20288-20303, 24384-24399, 28480-28495
    32576-32591, 36672-36687, 40768-40783
    44864-44879, 48960-48975, 53056-53071
    57152-57167, 61248-61263, 65344-65359
  Request statistics:
    Last Request: -
    Last Update : -
    0 request, 0 success, 0 failure
ix2215-01(config)#  



Client PC IPv6 Addrress
今度は"240b:xxxx:yyyy:f40c8::/64"が優先的に使用されるようになった

IPv6 Connecion Test
IPv6接続確認サイトでもきちんと"240b:xxxx:yyyy:f40c8::/64"で接続されていることを確認

かなりトリッキーな設定だが、とりあえずMAP-Eを有効にした状態でも、任意のIPv6 prefixで外部と通信できるようになった.MAP-Eを使いこなすには相当な努力と試行錯誤が必要なようだ.


MAP-E関連の設定の説明だけで長くなってしまったので、固定IPの設定に関しては続編で説明することにする.


Calendar

December 2025
S M T W T F S
 123456
78910111213
14151617181920
21222324252627
28293031  

Latest Posts

  • Blogroll

  • Meta