未来をささえる、Your Innovative Partner

IDCフロンティアとVyatta
株式会社IDCフロンテゖゕ
プラットフォームサービス部
佐久間 充
IDC Frontier Inc. All rights reserved.
自己紹介
• 佐久間

充

• IDCフロンテゖゕにてクラウドのネットワークを
主に担当しています。
• Vyattaはじめ仮想NWゕプラ゗ゕンスの問い合わ
せに日々奔走。
• 有償の仮想NWゕプラ゗ゕンスの導入に苦労して
おります。
IDC Frontier Inc. All rights reserved.

1
社内でのVyattaの位置づけ
• 無償テンプレートにて提供!

• ということもあり、基本サポートはなし。
• ただご安心ください!

• 裏ではしっかり調べてますので!!!
その結果、ご満足のいく回答で
なかったとしても、ご容赦ください。。
IDC Frontier Inc. All rights reserved.

2
仮想ルータ(Vyatta)の魅力

• 無料版がある!

取っつきやすい

• 自分でいろいろ試せる!
– Vyatta同士だけでなく
他機種とのVPN接続も

SSG550M
YAMAHA RTX1200
Cisco7301 / Cisco RVS4000など

弊社としても
検証実績あり!

• 何でもできる!・・・ような気がする。
– コミュニテゖも非常に活発な印象

コゕなお問い合わせも多数
IDC Frontier Inc. All rights reserved.

3
仮想ルータ(Vyatta)の魅力

• 無料版がある!

ただ、提供側としては
サポートが大変・・・

取っつきやすい

• 自分でいろいろ試せる!
– Vyatta同士だけでなく
他機種とのVPN接続も

SSG550M
YAMAHA RTX1200
Cisco7301 / Cisco RVS4000など

弊社としても
検証実績あり!

• 何でもできる!・・・ような気がする。
– コミュニテゖも非常に活発な印象

コゕなお問い合わせも多数
IDC Frontier Inc. All rights reserved.

4
あるお客様からのお問い合わせ(例)

「VPNしてプラ゗ベート網作っても、
ネットワークを追加するたびに
設定を変えなきゃいけないのは
面倒なんですけど・・・」

IDC Frontier Inc. All rights reserved.

5
あるお客様からのお問い合わせ(例)
192.168.1.0/24
Vyatta A

IPsec
VPN

Vyatta B
192.168.2.0/24

192.168.3.0/24
192.168.4.0/24

tunnel 1 {
local {
subnet 192.168.1.0/24
}
remote {
subnet 192.168.2.0/24
}
}
tunnel 2 {
local {
subnet 192.168.1.0/24
}
remote {
subnet 192.168.3.0/24
}
}
IDC Frontier Inc. All rights reserved.

tunnel 3 {
local {
subnet 192.168.1.0/24
}
remote {
subnet 192.168.4.0/24
}
}
6
あるお客様からのお問い合わせ(例)
192.168.1.0/24
Vyatta A

IPsec
VPN

Vyatta B
192.168.2.0/24

192.168.3.0/24
192.168.4.0/24

tunnel 1 {
local {
subnet 192.168.1.0/24
}
remote {
subnet 192.168.2.0/24
}
}

面倒だなぁ・・・。
tunnel 2 {
local {
subnet 192.168.1.0/24
}
remote {
subnet 192.168.3.0/24
}
}
IDC Frontier Inc. All rights reserved.

tunnel 3 {
local {
subnet 192.168.1.0/24
}
remote {
subnet 192.168.4.0/24
}
}
7
あるお客様からのお問い合わせ(例)
tunnel 1 {
local {
tunnel 1 subnet 192.168.1.0/24
} {
local remote {
{
subnet 192.168.2.0/24
subnet 192.168.1.0/24
}
} }

192.168.1.0/24
Vyatta A

IPsec
VPN

Vyatta B
192.168.2.0/24

192.168.3.0/24
192.168.2.0/22
192.168.4.0/24

面倒だなぁ・・・。
tunnel 2 {remote {
tunnel 3 {
local {
local {
subnet 192.168.2.0/22
subnet 192.168.1.0/24
subnet 192.168.1.0/24
}
}
}
remote {
remote {
}
subnet 192.168.3.0/24
subnet 192.168.4.0/24
}

}

}

}
IDC Frontier Inc. All rights reserved.

8
先ほどの問い合わせに対して
もっとスマートな解決法ないだろうか・・・

BGP/OSPFを張って動的に経路広報
させてやれば出来るような気が・・・

本当に出来るの? VPN上で? どうやって?

ということでやってみました。
IDC Frontier Inc. All rights reserved.

9
BGP/OSPF Over GRE Over IPsec
192.168.1.0/24
Vyatta(セルフ)
1.1.1.1

AS:64522
Vyatta(マネージド)
2.2.2.2
192.168.2.0/24

AS:64511

AS:64533

GRE (tun3)
IPsec VPN
192.168.103.0/24
IDC Frontier Inc. All rights reserved.

Vyatta(自宅)
3.3.3.3
192.168.3.0/24
10
やり方
①

IPsec VPN を張ります

②

GREトンネルを作ります

③

BGP / OSPFを流します

④

以上

実に簡単!

IDC Frontier Inc. All rights reserved.

11
Config - ① IPsec VPN
peer 2.2.2.2 {
authentication {
id @self-managed
mode pre-shared-secret
pre-shared-secret my_shared_secret
remote-id @managed-self
}
connection-type initiate
default-esp-group ESP
ike-group IKE
local-ip 10.1.11.1
tunnel 1 {
local {
subnet 10.1.11.0/24
}
remote {
subnet 172.24.22.0/24
}
}
}

peer 3.3.3.3 {
authentication {
id @self-home
mode pre-shared-secret
pre-shared-secret my_shared_secret
remote-id @home-self
}
default-esp-group ESP
ike-group IKE
local-ip 10.1.11.1
tunnel 1 {
local {
subnet 10.1.11.0/24
}
remote {
subnet 192.168.33.0/24
}
}
}

このあたりは『VPN 手順書』で検索して出てくる
IDCフロンテゖゕの手順書で!
IDC Frontier Inc. All rights reserved.

12
Config - ② GRE
interfaces {
tunnel tun1 {
address 192.168.100.1/24
encapsulation gre
ip {
ospf {
cost 20
dead-interval 40
hello-interval 10
priority 1
retransmit-interval 5
transmit-delay 1
}
local-ip 10.1.11.1
multicast enable
remote-ip 172.24.22.1
}
}

interfaces {
tunnel tun2 {
address 192.168.103.1/24
encapsulation gre
local-ip 10.1.11.1
multicast enable
remote-ip 192.168.33.1
}
}

※ デフォルトでMTUは 1472に設定されます

IDC Frontier Inc. All rights reserved.

13
Config - ② GRE
interfaces {
tunnel tun1 {
address 192.168.100.1/24
encapsulation gre
ip {
ospf {
cost 20
dead-interval 40
hello-interval 10
priority 1
retransmit-interval 5
transmit-delay 1
}
local-ip 10.1.11.1
multicast enable
remote-ip 172.24.22.1
}
}

基本的にはこれでGREトンネルはOK

interfaces {
tunnel tun2 {
address 192.168.103.1/24
encapsulation gre
local-ip 10.1.11.1
OSPFに関する設定
multicast enable
デフォルトでコストは20、切り替わり時間は40s
remote-ip 192.168.33.1
}
}

※ デフォルトでMTUは 1472に設定されます

IDC Frontier Inc. All rights reserved.

14
Config - ③ eBGP / OSPF
bgp 64515 {
neighbor 192.168.101.2 {
password password
remote-as 64516
soft-reconfiguration {
inbound
}
}
・・・(中略)・・・
network 192.168.1.0/24 {
}
timers {
holdtime 6
keepalive 2
}

ospf {
area 0.0.0.0 {
network 192.168.101.0/24
network 192.168.102.0/24
}
parameters {
abr-type cisco
router-id 1.1.1.1
}
redistribute {
connected {
metric-type 2
}
}
}

}
IDC Frontier Inc. All rights reserved.

15
Config - ③ eBGP / OSPF
bgp 64515 {
neighbor 192.168.101.2 {
password password
remote-as 64516
soft-reconfiguration {
inbound
}
}
・・・(中略)・・・
network 192.168.1.0/24 {
}
timers {
holdtime 6
keepalive 2
}

ospf {
area 0.0.0.0 {
AS間のネゴシエーション
network 192.168.101.0/24
network 192.168.102.0/24
}
parameters {
BGPで広報したいネットワーク
abr-type cisco
router-id 1.1.1.1
}
redistribute {
BGPの切り替わり時間
connected {
※ デフォルト180秒、今回は6秒に設定
metric-type 2
}
}
}

}
IDC Frontier Inc. All rights reserved.

16
Config - ③ eBGP / OSPF
bgp 64515 {
neighbor 192.168.100.2 {
OSPFでネゴシエーション
password password
するネットワーク
remote-as 64516
soft-reconfiguration {
inbound
}
} 各種パラメータ設定
・・・(中略)・・・
network 192.168.10.0/24 {
ABRはデフォルトでCisco

※} standardやIBMなども設定可能
timers {
holdtime 6
keepalive 2
}

ospf {
area 0.0.0.0 {
network 192.168.101.0/24
network 192.168.102.0/24
}
parameters {
abr-type cisco
router-id 1.1.1.1
}
redistribute {
connected {
metric-type 2
}
}
}

}
IDC Frontier Inc. All rights reserved.

17
軽くデモ
• ちゃんと切り替わるの?

• 経路追加したときにちゃんと広報するの?

IDC Frontier Inc. All rights reserved.

18
はまったところ

唯一、非NAT環境だから?

• 他社クラウド環境も使ってスクエゕ・フルメッシュ構成にしようと
したが、失敗。
192.168.3.0/24

192.168.1.0/24

Vyatta

Vyatta(セルフ)
1.1.1.1
AS:64511

IPsec VPN

AS:64544

AS:64522
Vyatta(マネージド)
2.2.2.2
192.168.2.0/24

GRE (tun3)
IPsec VPN
192.168.103.0/24

AS:64533
Vyatta(自宅)
3.3.3.3
192.168.3.0/24

⇒ VPNは一応UPするけど怪しいし、OSPFもすぐに切れる
⇒ MTUのせい?と思ってMTUを1200で統一するもダメ…。
IDC Frontier Inc. All rights reserved.

19
はまったところ

180s

• BGPのHold Timeがデフォルトで
なので、そこを
変えずに切り替え時に通信が長時間途切れてあたふた

• 6.4と6.6を混ぜた状態で当初は構築したところ、
OSPFがネゴシエーション確立しない
⇒ 6.5以降にはMTU制限が効かなくなるというのが
あるらしく、これが原因?

“http://d.hatena.ne.jp/mikeda/20121217/1355762337”など

⇒

結局よくわからず6.4にて構築し直し…。

• ゗ンストールせずに構築し、忘れて再起動…。
⇒

何度繰り返したことか…
などなど、設定としては非常に簡単だが、
実際にやってみると意外に苦労しました…。
IDC Frontier Inc. All rights reserved.

20
ここまでやってみて・・・
• せっかく作ったこの環境、
「作ってみました、どうでしょう!」で
終わらせるのはもったいない…。

• 家にあるストレージにIDCFセルフクラウドから
゗ンターネット越しにiSCSI接続して
ベンチマークでもしてみよう!

IDC Frontier Inc. All rights reserved.

21
構成
Vyatta(セルフ) AS:64511
1.1.1.1

AS:64522
Vyatta(マネージド)
2.2.2.2

AS:64533

GRE (tun3)
IPsec VPN

Vyatta(自宅)
3.3.3.3

192.168.103.0/24

IDC Frontier Inc. All rights reserved.

22
結果(bonnie++)

1GBのフゔ゗ルに対して読み書き
VPN経由ゕクセス

Sequential Output
Sequential Input
Random
Per Char
Block
Rewrite
Per Char
Block
Seeks
K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU /sec %CPU
299
70 3131
0 1331
0 2105
45 2880
0 190.8
3
2383ms
7326ms
3177ms
58073us
414ms
509ms

Read : 2.9MB/s, Write : 3.1MB/s
LAN内ゕクセス

Sequential Output
Sequential Input
Random
Per Char
Block
Rewrite
Per Char
Block
Seeks
K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU /sec %CPU
451
92 9185
3 5416
2 2350
92 13824
3 267.7
18
289ms
5650ms
1221ms
40446us
66107us
160ms

Read : 13.8MB/s, Write : 9.2MB/s
IDC Frontier Inc. All rights reserved.

23
接続中に切り替わっても問題ない?
• dd if=/dev/zero of=file count=4096 bs=1024k

• 4Gフゔ゗ルを生成中にtun2をdisableにして経路
切り替え
問題なく動作
ただ、切り替えが遅かったらだめかも

ネットワーク使用量が多すぎて
一体何してるんですかと
注意されてしまいましたが・・・
IDC Frontier Inc. All rights reserved.

24
これからやってみたい事
• BGPやってみたけど、この構成だとあまり意味
が無い?

(当初の計画が10台のVyattaを構築して
複雑な構成で試す予定だったのは秘密)

• もっとたくさんのVyatta間でこの構成を

大きくしていったら面白いことになるかも!?
繋げてもいいよ!という方を募集!?
IDC Frontier Inc. All rights reserved.

25
これからやってみたい事

続きはブログで?
• BGPやってみたけど、この構成だとあまり意味
http://www.idcf.jp/blog/
が無い?
(当初の計画が10台のVyattaを構築して
複雑な構成で試す予定だったのは秘密)

• もっとたくさんのVyatta間でこの構成を

大きくしていったら面白いことになるかも!?
繋げてもいいよ!という方を募集!?
IDC Frontier Inc. All rights reserved.

26
事業者から見たVyattaの魅力と今後
• 無料なので新規サービスに使いやすい!

• いろんな構成が試せて、大規模な機能検証も
その代り、VyattaのみでのNW構築は向かない
可能!

(そもそもサーバに48portも普通はのせない)

安定性よりは機能性!
( MPLS, BFD, VxLAN, TRILL・・・)
※ Ciscoなどの物理SWは安定性が最重要だけれど
IDC Frontier Inc. All rights reserved.

27
まとめ
• Vyatta使ってこんなことやってみました!
– BGP/OSPF over GRE over IPsec VPN with Vyatta
– iSCSIベンチマーク

IDC Frontier Inc. All rights reserved.

28
未来をささえる、Your Innovative Partner

IDC Frontier Inc. All rights reserved.

29

VYATTA USERS MEETING Autumn 2013_idcf