Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
3
Help us understand the problem. What is going on with this article?
@hshimomu

NTTフレッツ IPv6上でCisco DMVPN (IPv4 over IPv6)を組んでみた

More than 1 year has passed since last update.

なぜ興味を持ったのか

各種ブログや口コミを拝見していると、フレッツPPPoEのスループット、latencyなどに満足をいただけていないのをよく拝見します。

これは主にNTT東西が提供しているフレッツサービスのPPPoEの設備増設ポリシーに依存していることが大きく、解決策としてIPv6を利用するのが一般的になってきました。
(上記については、この辺りでISPの中の人が詳しく解説いただいています)

一方、同様の理由でVPN over IPv6も様々なサービスがラインナップされつつありますが(例えばNTTComなど)、企業向けルータのDIYの記事ではYamaha RTXを利用した記事が多く、逆にCiscoを使った事例見つけることができませんでした。
ということで、やってみました。

環境

Cisco ISR C891FJ-K9
ローエンドの拠点向けルータとしてリリースされているものです。

ソフトウェアバージョンなど

sh ver
Cisco IOS Software, C800 Software (C800-UNIVERSALK9-M), Version 15.7(3)M4, RELEASE SOFTWARE (fc2)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2019 by Cisco Systems, Inc.
Compiled Sat 09-Feb-19 16:59 by prod_rel_team
一部略
License Information for 'c800'
License Level: advipservices Type: Permanent
Next reboot license Level: advipservices

891FJは、Advanced IP Services がembeddedされており、DMVPNやEIGRPをサポートしており、お買い得感があります。
(C841mだとオークション市場によく出回っているのが上記をサポートしていないAdvanced Securityだったりします)

ISP

IIJmioにはIPoEオプションを追加し、native IPoE + ひかり電話 の環境です。よってIPv6 prefix delegation でひかり電話ルータからprefixを受け取理、IPv6 address auto configuration で半固定IPv6を生成しています。
IIJ FiberAccess/NFではフレッツアンバンドルのIIJのIPoEサービスであり、上記と同様にひかり電話環境です。

やりたいこと

3拠点以上でVPNを貼って遊びたい勉強したい。
- IPSEC (どうせならDMVPNで)
- IPv4 (private address) over IPv6 (フレッツ native IPv6)

Config

以下のconfigで、DMVPNはupして、EIGRPで経路も出てきました。
spoke siteを2つ作ったところ、Dynamic tunnel で通信できているようなので、うまくできたと思われます(ツッコミ歓迎)。
関係があるところだけを抜粋します。ポイントは multi-point GREの末尾にipv6をつける。逆にいうとそれだけである。
Dynamic routingはなんでもいいのだが、ここではEIGRPで。(今は他の機器との相互接続でスッキリさせたいのでOSPFにしている)

hub サイト

sh run
crypto isakmp policy 1
encr aes 256
hash sha256
authentication pre-share
group 24
crypto isakmp key cisco123 address ipv6 ::/0
!
!
crypto ipsec transform-set transform-dmvpn esp-aes 256 esp-sha256-hmac
mode transport
!
!
crypto ipsec profile profile-dmvpn
set transform-set transform-dmvpn
!
interface Tunnel1
description ###DMVPN intranet###
ip address 10.0.10.1 255.255.255.0
no ip redirects
ip mtu 1360
no ip next-hop-self eigrp 1
no ip split-horizon eigrp 1
ip pim sparse-mode
ip nhrp network-id 1
ip nhrp holdtime 360
ip nhrp redirect
ip tcp adjust-mss 1320
load-interval 30
keepalive 10 3
tunnel source GigabitEthernet8
tunnel mode gre multipoint ipv6
tunnel key 1
tunnel protection ipsec profile profile-dmvpn shared
!
interface GigabitEthernet8
description ##WAN I/F to Flet's###
no ip address
duplex auto
speed auto
no cdp enable
ipv6 address autoconfig default
ipv6 enable
ipv6 dhcp client pd PREFIX
pppoe enable group global
pppoe-client dial-pool-number 1
!
router eigrp 1
network 10.0.10.0 0.0.0.255

spokeサイト

sh run
crypto isakmp policy 1
encr aes 256
hash sha256
authentication pre-share
group 24
!
crypto isakmp key cisco123 address ipv6 ::/0
!
!
crypto ipsec transform-set transform-dmvpn esp-aes 256 esp-sha256-hmac
mode transport
!
!
crypto ipsec profile profile-dmvpn
set transform-set transform-dmvpn
!
interface Tunnel1
description ###DMVPN Intranet###
ip address 10.0.10.2 255.255.255.0
ip mtu 1360
no ip next-hop-self eigrp 1
no ip split-horizon eigrp 1
ip pim sparse-mode
ip nhrp map 10.0.10.1 [hubサイトのIPv6 address]
ip nhrp map multicast [hubサイトのIPv6 address]
ip nhrp network-id 1
ip nhrp holdtime 360
ip nhrp nhs 10.0.10.1
ip tcp adjust-mss 1320
delay 1000
tunnel source GigabitEthernet8
tunnel mode gre multipoint ipv6
tunnel key 1
tunnel protection ipsec profile profile-dmvpn shared
!
interface GigabitEthernet8
description ##WAN I/F to Flet's###
no ip address
duplex auto
speed auto
no cdp enable
ipv6 address autoconfig default
ipv6 enable
ipv6 dhcp client pd PREFIX
pppoe enable group global
pppoe-client dial-pool-number 1
!
router eigrp 1
network 10.0.10.0 0.0.0.255

残課題など

  • ping値は東京〜山梨間で夜間の混雑時間であっても12-15msec程度で安定しており、さすがIPv6と言ったところでしょうか。
  • 最低限80Mbps程度のスループットは出ている模様。(自宅がVDSLのため、それ以上は継続できず)
  • IPSECヘッダに透過しているQoSのうちIP_TOS 0x48がフレッツの網内でdropすることがある(網仕様?)。macOSからSSHしようとすると漏れなくdropしてくれるので、回避策を要検討。当座 ~/.ssh/configにIPQoS 0x00と記載でカバー。IPv6 over PPPoE であれば問題なし。
  • MTU値について、Ciscoのデザインガイドは1400byteを使用したところフラグメントが発生しているのか、10Mbpsとスループットが落ちた。40byteほど余裕を持たせたところ大丈夫になった。

参考資料

Cisco Scalable DMVPN Design and Implementation Guide
IPv4 DMVPN over IPv6 WAN - Configuration
Cisco IPv6 インターネット接続設定例(IPv6oE方式)
Cisco IPSec Overhead Calculator Tool

3
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
3
Help us understand the problem. What is going on with this article?