SlideShare a Scribd company logo
1 of 15
Download to read offline
Copyright © NIFTY Corporation All Rights Reserved.
VyOSでMPLS
ニフティ株式会社
日下部 雄也
Copyright © NIFTY Corporation All Rights Reserved. 2
自己紹介
 Twitter/GitHub: higebu
 ニフティクラウド
 仮想ネットワーク
 DRサービス with VMware vCloud® Air™
Technology
 その他
 VyOS
 コミット権持ってる
 vyos-users.jp
Copyright © NIFTY Corporation All Rights Reserved. 3
ニフティクラウドとVyOS
 VPNゲートウェイとルーターという機能で
使っている
 数百台動いている
 ちょっと改造してる
 L2フィルタ
 Managed L2TPv3
 その他バグ修正
後輩の蓮沼くん
最近は彼が直している
Copyright © NIFTY Corporation All Rights Reserved. 4
ニフティクラウドとMPLS
 物理ネットワークの人に聞いたところ、
ちょっと使ってるらしい
 MPLSが盛り上がったのは数年前なので今
さら話してもという感じらしい
Copyright © NIFTY Corporation All Rights Reserved. 5
新しいVyOS
 Debian Jessieベース
 Systemd…
 Linux Kernel 4.4系
 MPLS使える
 詳しくはWebで
 http://vyos.net/wiki/Beryllium
 https://www.higebu.com/blog/2016/02/
26/2016-02-26-vyos-beryllium/
Copyright © NIFTY Corporation All Rights Reserved. 6
新しいVyOSを動かす
 ISOからインストールするのが面倒なので、とり
あえずインストール済みのVMイメージを使う
 https://github.com/higebu/vyos-
build/releases/tag/1.2.0-higebu5
 1.2.0正式リリース時にはVMイメージもリリー
スされるはず
Copyright © NIFTY Corporation All Rights Reserved. 7
iproute2をv4.4.0にする
 vyos/vyatta-iprouteというリポジトリがあるの
で、それを使う
 4.4.0にしてビルドしたパッケージはこちら
 https://github.com/higebu/vyatta-
iproute/releases/tag/debian%2F4.4.0-1vyos2
 4.4.0にした方がよくない?と言ったら昨晩本体
も4.4.0になったけどちょっとおかしいので後で
直したい
 未だに”iproute”パッケージしかビルドしてない
 DebianのパッケージがISOに入ってしまってるよう
に見える
 さっき見たら修正したISOできてた
– UnicronNLさん仕事早すぎる
Copyright © NIFTY Corporation All Rights Reserved. 8
iproute2をv4.4.0にする
dpkg -l | grep iproute
ii iproute 1:3.16.0-2 all transitional dummy package for iproute2
ii iproute2 3.16.0-2 amd64 networking and traffic control tools
dpkg -i iproute_4.4.0-1vyos2_all.deb iproute2_4.4.0-
1vyos2_amd64.deb
dpkg -l | grep iproute
ii iproute 1:4.4.0-1vyos2 all transitional dummy package for iproute2
ii iproute2 1:4.4.0-1vyos2 amd64 networking and traffic control tools
※最新のISOを使う場合、この手順はいらないです
Copyright © NIFTY Corporation All Rights Reserved. 9
MPLSを試してみる
 Linux kernel 4.3.0から使えるようになった
 4.4でMultipath routingがサポートされた
 https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.g
it/commit/?id=f8efb73c97e2fa0abbe2e07c5c5df07800312
643
 https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.g
it/commit/?id=1c78efa8319cad2f10f421afa627745fb4d9b
29f
 BrocadeやCumulusの方だ…
 VyOSのカーネルが4.4になって使えそうなので
試してみる
 内容は MPLS testbed on Ubuntu Linux with
kernel 4.3 と同じです
Copyright © NIFTY Corporation All Rights Reserved. 10
MPLSを試してみる
 動くかどうか見たいだけなのでとりあえず1ノー
ドでNetwork Namespace作って試す
netns host1
veth1
netns host2
veth3
veth0 veth2
lo lo
10.3.3.1/24 10.4.4.1/24
10.10.10.1/3210.3.3.2/24 10.4.4.2/2410.10.10.2/32
Label: 111
Label: 112
VyOS
Copyright © NIFTY Corporation All Rights Reserved. 11
MPLSを試してみる
modprobe mpls_router
modprobe mpls_iptunnel
modprobe mpls_gso
sysctl -w net.mpls.platform_labels=1000
モジュールをロードして、ラベルの最大値を設定する
Copyright © NIFTY Corporation All Rights Reserved. 12
MPLSを試してみる
ip link add veth0 type veth peer name veth1
ip link add veth2 type veth peer name veth3
sysctl -w net.mpls.conf.veth0.input=1
sysctl -w net.mpls.conf.veth2.input=1
ifconfig veth0 10.3.3.1/24 up
ifconfig veth2 10.4.4.1/24 up
ip netns add host1
ip netns add host2
ip link set veth1 netns host1
ip link set veth3 netns host2
ip netns exec host1 ifconfig lo 10.10.10.1/32 up
ip netns exec host1 ifconfig veth1 10.3.3.2/24 up
ip netns exec host2 ifconfig lo 10.10.10.2/32 up
ip netns exec host2 ifconfig veth3 10.4.4.2/24 up
ip netns exec host1 ip route add 10.10.10.2/32 encap mpls 112 via inet 10.3.3.1
ip netns exec host2 ip route add 10.10.10.1/32 encap mpls 111 via inet 10.4.4.1
ip -f mpls route add 111 via inet 10.3.3.2
ip -f mpls route add 112 via inet 10.4.4.2
veth作ってnetns作ってmplsの設定をする
Copyright © NIFTY Corporation All Rights Reserved. 13
MPLSを試してみる
ip netns exec host1 ip route
10.3.3.0/24 dev veth1 proto kernel scope link src 10.3.3.2
10.10.10.2 encap mpls 112 via 10.3.3.1 dev veth1
ip netns exec host2 ip route
10.4.4.0/24 dev veth3 proto kernel scope link src 10.4.4.2
10.10.10.1 encap mpls 111 via 10.4.4.1 dev veth3
ip -M route
111 via inet 10.3.3.2 dev veth0
112 via inet 10.4.4.2 dev veth2
ルートが入っているか確認
Copyright © NIFTY Corporation All Rights Reserved. 14
MPLSを試してみる
ip netns exec host2 ping 10.10.10.1 -I 10.10.10.2
PING 10.10.10.1 (10.10.10.1) from 10.10.10.2 : 56(84) bytes of data.
64 bytes from 10.10.10.1: icmp_seq=1 ttl=63 time=0.131 ms
64 bytes from 10.10.10.1: icmp_seq=2 ttl=63 time=0.085 ms
64 bytes from 10.10.10.1: icmp_seq=3 ttl=63 time=0.119 ms
tcpdump -envi veth0
tcpdump: listening on veth0, link-type EN10MB (Ethernet), capture size 262144 bytes
12:31:55.328221 0e:5c:af:ae:ad:68 > 76:3c:bd:ec:13:ac, ethertype IPv4 (0x0800), length
98: (tos 0x0, ttl 63, id 10742, offset 0, flags [DF], proto ICMP (1), length 84)
10.10.10.2 > 10.10.10.1: ICMP echo request, id 2865, seq 27, length 64
12:31:55.328246 76:3c:bd:ec:13:ac > 0e:5c:af:ae:ad:68, ethertype MPLS unicast
(0x8847), length 102: MPLS (label 112, exp 0, [S], ttl 64)
(tos 0x0, ttl 64, id 62371, offset 0, flags [none], proto ICMP (1), length 84)
10.10.10.1 > 10.10.10.2: ICMP echo reply, id 2865, seq 27, length 64
host2のloからhost1のloにping通るか試す(Label: 112)
MPLSのラベルが付いているか確認する
Copyright © NIFTY Corporation All Rights Reserved. 15
今後の予定
 MPLSのコマンド作る?
 早く1.2.0正式版リリースしないと…
 ニフティクラウドのネットワーク周りの機
能アップデートにもご期待ください

More Related Content

What's hot

【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮Hibino Hisashi
 
データセンターネットワークの構成について
データセンターネットワークの構成についてデータセンターネットワークの構成について
データセンターネットワークの構成についてMicroAd, Inc.(Engineer)
 
FAPI and beyond - よりよいセキュリティのために
FAPI and beyond - よりよいセキュリティのためにFAPI and beyond - よりよいセキュリティのために
FAPI and beyond - よりよいセキュリティのためにNat Sakimura
 
VPP事始め
VPP事始めVPP事始め
VPP事始めnpsg
 
MySQLとPostgreSQLの基本的なレプリケーション設定比較
MySQLとPostgreSQLの基本的なレプリケーション設定比較MySQLとPostgreSQLの基本的なレプリケーション設定比較
MySQLとPostgreSQLの基本的なレプリケーション設定比較Shinya Sugiyama
 
DPDKによる高速コンテナネットワーキング
DPDKによる高速コンテナネットワーキングDPDKによる高速コンテナネットワーキング
DPDKによる高速コンテナネットワーキングTomoya Hibi
 
OpenStack勉強会
OpenStack勉強会OpenStack勉強会
OpenStack勉強会Yuki Obara
 
macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~
macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~
macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~NTT Communications Technology Development
 
How VXLAN works on Linux
How VXLAN works on LinuxHow VXLAN works on Linux
How VXLAN works on LinuxEtsuji Nakai
 
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudyネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudyYahoo!デベロッパーネットワーク
 
IPv4/IPv6 移行・共存技術の動向
IPv4/IPv6 移行・共存技術の動向IPv4/IPv6 移行・共存技術の動向
IPv4/IPv6 移行・共存技術の動向Yuya Rin
 
Onieで遊んでみようとした話
Onieで遊んでみようとした話Onieで遊んでみようとした話
Onieで遊んでみようとした話Masaru Oki
 
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)NTT DATA Technology & Innovation
 
10分でわかる Cilium と XDP / BPF
10分でわかる Cilium と XDP / BPF10分でわかる Cilium と XDP / BPF
10分でわかる Cilium と XDP / BPFShuji Yamada
 
バックボーン運用から見るインターネットの実情
バックボーン運用から見るインターネットの実情バックボーン運用から見るインターネットの実情
バックボーン運用から見るインターネットの実情IIJ
 
【SRX】JUNOS ハンズオントレーニング資料 SRXシリーズ サービス ゲートウェイ コース
【SRX】JUNOS ハンズオントレーニング資料 SRXシリーズ サービス ゲートウェイ コース【SRX】JUNOS ハンズオントレーニング資料 SRXシリーズ サービス ゲートウェイ コース
【SRX】JUNOS ハンズオントレーニング資料 SRXシリーズ サービス ゲートウェイ コースJuniper Networks (日本)
 

What's hot (20)

【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
 
データセンターネットワークの構成について
データセンターネットワークの構成についてデータセンターネットワークの構成について
データセンターネットワークの構成について
 
FAPI and beyond - よりよいセキュリティのために
FAPI and beyond - よりよいセキュリティのためにFAPI and beyond - よりよいセキュリティのために
FAPI and beyond - よりよいセキュリティのために
 
L2延伸を利用したクラウド移行とクラウド活用術
L2延伸を利用したクラウド移行とクラウド活用術L2延伸を利用したクラウド移行とクラウド活用術
L2延伸を利用したクラウド移行とクラウド活用術
 
OpenStack Swift紹介
OpenStack Swift紹介OpenStack Swift紹介
OpenStack Swift紹介
 
VPP事始め
VPP事始めVPP事始め
VPP事始め
 
MySQLとPostgreSQLの基本的なレプリケーション設定比較
MySQLとPostgreSQLの基本的なレプリケーション設定比較MySQLとPostgreSQLの基本的なレプリケーション設定比較
MySQLとPostgreSQLの基本的なレプリケーション設定比較
 
DPDKによる高速コンテナネットワーキング
DPDKによる高速コンテナネットワーキングDPDKによる高速コンテナネットワーキング
DPDKによる高速コンテナネットワーキング
 
自宅k8s/vSphere入門
自宅k8s/vSphere入門自宅k8s/vSphere入門
自宅k8s/vSphere入門
 
OpenStack勉強会
OpenStack勉強会OpenStack勉強会
OpenStack勉強会
 
macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~
macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~
macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~
 
How VXLAN works on Linux
How VXLAN works on LinuxHow VXLAN works on Linux
How VXLAN works on Linux
 
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudyネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
 
IPv4/IPv6 移行・共存技術の動向
IPv4/IPv6 移行・共存技術の動向IPv4/IPv6 移行・共存技術の動向
IPv4/IPv6 移行・共存技術の動向
 
Onieで遊んでみようとした話
Onieで遊んでみようとした話Onieで遊んでみようとした話
Onieで遊んでみようとした話
 
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
 
10分でわかる Cilium と XDP / BPF
10分でわかる Cilium と XDP / BPF10分でわかる Cilium と XDP / BPF
10分でわかる Cilium と XDP / BPF
 
【初心者向け】API を使ってクラウドの管理を自動化しよう
【初心者向け】API を使ってクラウドの管理を自動化しよう【初心者向け】API を使ってクラウドの管理を自動化しよう
【初心者向け】API を使ってクラウドの管理を自動化しよう
 
バックボーン運用から見るインターネットの実情
バックボーン運用から見るインターネットの実情バックボーン運用から見るインターネットの実情
バックボーン運用から見るインターネットの実情
 
【SRX】JUNOS ハンズオントレーニング資料 SRXシリーズ サービス ゲートウェイ コース
【SRX】JUNOS ハンズオントレーニング資料 SRXシリーズ サービス ゲートウェイ コース【SRX】JUNOS ハンズオントレーニング資料 SRXシリーズ サービス ゲートウェイ コース
【SRX】JUNOS ハンズオントレーニング資料 SRXシリーズ サービス ゲートウェイ コース
 

Similar to VyOSでMPLS

CONBU LL Diver/YAPC::Asia 2014 Network
CONBU LL Diver/YAPC::Asia 2014 NetworkCONBU LL Diver/YAPC::Asia 2014 Network
CONBU LL Diver/YAPC::Asia 2014 NetworkYuya Takahashi
 
「さくらのクラウド」におけるVyattaの活用事例
「さくらのクラウド」におけるVyattaの活用事例「さくらのクラウド」におけるVyattaの活用事例
「さくらのクラウド」におけるVyattaの活用事例SAKURA Internet Inc.
 
LinAction Theme LPICの問題を解いてみる~ネットワーク編~
LinAction Theme LPICの問題を解いてみる~ネットワーク編~LinAction Theme LPICの問題を解いてみる~ネットワーク編~
LinAction Theme LPICの問題を解いてみる~ネットワーク編~cyberblack28 Ichikawa
 
FD.io VPP事始め
FD.io VPP事始めFD.io VPP事始め
FD.io VPP事始めtetsusat
 
第20回 OpenStack勉強会 Neutron Deep Dive - DVR
第20回 OpenStack勉強会 Neutron Deep Dive - DVR第20回 OpenStack勉強会 Neutron Deep Dive - DVR
第20回 OpenStack勉強会 Neutron Deep Dive - DVRToru Makabe
 
【第11回 クラウドごった煮(コンテナ勉強会)】Docker networking tools
【第11回 クラウドごった煮(コンテナ勉強会)】Docker networking tools【第11回 クラウドごった煮(コンテナ勉強会)】Docker networking tools
【第11回 クラウドごった煮(コンテナ勉強会)】Docker networking toolsNobuyuki Matsui
 
Nsegソフトウェアルータvyatta
NsegソフトウェアルータvyattaNsegソフトウェアルータvyatta
Nsegソフトウェアルータvyattajem 3
 
RHEL7/CentOS7 NetworkManager徹底入門
RHEL7/CentOS7 NetworkManager徹底入門RHEL7/CentOS7 NetworkManager徹底入門
RHEL7/CentOS7 NetworkManager徹底入門Etsuji Nakai
 
JOSUG 9th Study
JOSUG 9th StudyJOSUG 9th Study
JOSUG 9th Studyirix_jp
 
「Neutronになって理解するOpenStack Network」~Neutron/Open vSwitchなどNeutronと周辺技術の解説~ - ...
「Neutronになって理解するOpenStack Network」~Neutron/Open vSwitchなどNeutronと周辺技術の解説~  - ...「Neutronになって理解するOpenStack Network」~Neutron/Open vSwitchなどNeutronと周辺技術の解説~  - ...
「Neutronになって理解するOpenStack Network」~Neutron/Open vSwitchなどNeutronと周辺技術の解説~ - ...VirtualTech Japan Inc.
 
Lagopus Router v19.07.1
Lagopus Router v19.07.1Lagopus Router v19.07.1
Lagopus Router v19.07.1Tomoya Hibi
 
ML2/OVN アーキテクチャ概観
ML2/OVN アーキテクチャ概観ML2/OVN アーキテクチャ概観
ML2/OVN アーキテクチャ概観Yamato Tanaka
 
20150715 xflow kikuta_final
20150715 xflow kikuta_final20150715 xflow kikuta_final
20150715 xflow kikuta_finalKazumasa Ikuta
 
DeNA private cloudのその後 #denatechcon
DeNA private cloudのその後 #denatechconDeNA private cloudのその後 #denatechcon
DeNA private cloudのその後 #denatechconDeNA
 
KubernetesとFlannelでWindows上にPod間VXLAN Overlayネットワークを構成
KubernetesとFlannelでWindows上にPod間VXLAN Overlayネットワークを構成KubernetesとFlannelでWindows上にPod間VXLAN Overlayネットワークを構成
KubernetesとFlannelでWindows上にPod間VXLAN Overlayネットワークを構成Takashi Kanai
 
Lpicl304セミナー資料20140727
Lpicl304セミナー資料20140727Lpicl304セミナー資料20140727
Lpicl304セミナー資料20140727Takahiro Kujirai
 
OpenStackを利用したNFVの商用化 - OpenStack最新情報セミナー 2017年7月
OpenStackを利用したNFVの商用化 - OpenStack最新情報セミナー 2017年7月OpenStackを利用したNFVの商用化 - OpenStack最新情報セミナー 2017年7月
OpenStackを利用したNFVの商用化 - OpenStack最新情報セミナー 2017年7月VirtualTech Japan Inc.
 
コンテナのネットワークインターフェース その実装手法とその応用について
コンテナのネットワークインターフェース その実装手法とその応用についてコンテナのネットワークインターフェース その実装手法とその応用について
コンテナのネットワークインターフェース その実装手法とその応用についてTomofumi Hayashi
 

Similar to VyOSでMPLS (20)

CONBU LL Diver/YAPC::Asia 2014 Network
CONBU LL Diver/YAPC::Asia 2014 NetworkCONBU LL Diver/YAPC::Asia 2014 Network
CONBU LL Diver/YAPC::Asia 2014 Network
 
「さくらのクラウド」におけるVyattaの活用事例
「さくらのクラウド」におけるVyattaの活用事例「さくらのクラウド」におけるVyattaの活用事例
「さくらのクラウド」におけるVyattaの活用事例
 
LinAction Theme LPICの問題を解いてみる~ネットワーク編~
LinAction Theme LPICの問題を解いてみる~ネットワーク編~LinAction Theme LPICの問題を解いてみる~ネットワーク編~
LinAction Theme LPICの問題を解いてみる~ネットワーク編~
 
DPDKを拡張してみた話し
DPDKを拡張してみた話しDPDKを拡張してみた話し
DPDKを拡張してみた話し
 
FD.io VPP事始め
FD.io VPP事始めFD.io VPP事始め
FD.io VPP事始め
 
第20回 OpenStack勉強会 Neutron Deep Dive - DVR
第20回 OpenStack勉強会 Neutron Deep Dive - DVR第20回 OpenStack勉強会 Neutron Deep Dive - DVR
第20回 OpenStack勉強会 Neutron Deep Dive - DVR
 
【第11回 クラウドごった煮(コンテナ勉強会)】Docker networking tools
【第11回 クラウドごった煮(コンテナ勉強会)】Docker networking tools【第11回 クラウドごった煮(コンテナ勉強会)】Docker networking tools
【第11回 クラウドごった煮(コンテナ勉強会)】Docker networking tools
 
Nsegソフトウェアルータvyatta
NsegソフトウェアルータvyattaNsegソフトウェアルータvyatta
Nsegソフトウェアルータvyatta
 
RHEL7/CentOS7 NetworkManager徹底入門
RHEL7/CentOS7 NetworkManager徹底入門RHEL7/CentOS7 NetworkManager徹底入門
RHEL7/CentOS7 NetworkManager徹底入門
 
JOSUG 9th Study
JOSUG 9th StudyJOSUG 9th Study
JOSUG 9th Study
 
「Neutronになって理解するOpenStack Network」~Neutron/Open vSwitchなどNeutronと周辺技術の解説~ - ...
「Neutronになって理解するOpenStack Network」~Neutron/Open vSwitchなどNeutronと周辺技術の解説~  - ...「Neutronになって理解するOpenStack Network」~Neutron/Open vSwitchなどNeutronと周辺技術の解説~  - ...
「Neutronになって理解するOpenStack Network」~Neutron/Open vSwitchなどNeutronと周辺技術の解説~ - ...
 
Lagopus Router v19.07.1
Lagopus Router v19.07.1Lagopus Router v19.07.1
Lagopus Router v19.07.1
 
ML2/OVN アーキテクチャ概観
ML2/OVN アーキテクチャ概観ML2/OVN アーキテクチャ概観
ML2/OVN アーキテクチャ概観
 
20150715 xflow kikuta_final
20150715 xflow kikuta_final20150715 xflow kikuta_final
20150715 xflow kikuta_final
 
DeNA private cloudのその後 #denatechcon
DeNA private cloudのその後 #denatechconDeNA private cloudのその後 #denatechcon
DeNA private cloudのその後 #denatechcon
 
KubernetesとFlannelでWindows上にPod間VXLAN Overlayネットワークを構成
KubernetesとFlannelでWindows上にPod間VXLAN Overlayネットワークを構成KubernetesとFlannelでWindows上にPod間VXLAN Overlayネットワークを構成
KubernetesとFlannelでWindows上にPod間VXLAN Overlayネットワークを構成
 
lilo.linux.or.jp の話
lilo.linux.or.jp の話lilo.linux.or.jp の話
lilo.linux.or.jp の話
 
Lpicl304セミナー資料20140727
Lpicl304セミナー資料20140727Lpicl304セミナー資料20140727
Lpicl304セミナー資料20140727
 
OpenStackを利用したNFVの商用化 - OpenStack最新情報セミナー 2017年7月
OpenStackを利用したNFVの商用化 - OpenStack最新情報セミナー 2017年7月OpenStackを利用したNFVの商用化 - OpenStack最新情報セミナー 2017年7月
OpenStackを利用したNFVの商用化 - OpenStack最新情報セミナー 2017年7月
 
コンテナのネットワークインターフェース その実装手法とその応用について
コンテナのネットワークインターフェース その実装手法とその応用についてコンテナのネットワークインターフェース その実装手法とその応用について
コンテナのネットワークインターフェース その実装手法とその応用について
 

More from 雄也 日下部

GoでEPC作って本番運用している話
GoでEPC作って本番運用している話GoでEPC作って本番運用している話
GoでEPC作って本番運用している話雄也 日下部
 
VyOS Users Meeting Japan #4 VyOS 1.2.0の開発の様子と自動テストの話
VyOS Users Meeting Japan #4 VyOS 1.2.0の開発の様子と自動テストの話VyOS Users Meeting Japan #4 VyOS 1.2.0の開発の様子と自動テストの話
VyOS Users Meeting Japan #4 VyOS 1.2.0の開発の様子と自動テストの話雄也 日下部
 
20141121 zabbix conference_japan_2014_nifty_kusakabe
20141121 zabbix conference_japan_2014_nifty_kusakabe20141121 zabbix conference_japan_2014_nifty_kusakabe
20141121 zabbix conference_japan_2014_nifty_kusakabe雄也 日下部
 
CoreOS OEM on NIFTY Cloud - CoreOS Meetup Tokyo #1 #coreosjp
CoreOS OEM on NIFTY Cloud - CoreOS Meetup Tokyo #1 #coreosjpCoreOS OEM on NIFTY Cloud - CoreOS Meetup Tokyo #1 #coreosjp
CoreOS OEM on NIFTY Cloud - CoreOS Meetup Tokyo #1 #coreosjp雄也 日下部
 
Building and Customizing CoreOS
Building and Customizing CoreOSBuilding and Customizing CoreOS
Building and Customizing CoreOS雄也 日下部
 
20141102 VyOS 1.1.0 and NIFTY Cloud New Features
20141102 VyOS 1.1.0 and NIFTY Cloud New Features20141102 VyOS 1.1.0 and NIFTY Cloud New Features
20141102 VyOS 1.1.0 and NIFTY Cloud New Features雄也 日下部
 
VYATTA USERS MEETING Spring 2014 VyOS
VYATTA USERS MEETING Spring 2014 VyOSVYATTA USERS MEETING Spring 2014 VyOS
VYATTA USERS MEETING Spring 2014 VyOS雄也 日下部
 
VYATTA USERS MEETING Spring 2014 NIFTY Cloud
VYATTA USERS MEETING Spring 2014 NIFTY CloudVYATTA USERS MEETING Spring 2014 NIFTY Cloud
VYATTA USERS MEETING Spring 2014 NIFTY Cloud雄也 日下部
 
Zabbix Conference Japan 2013 VMware monitoring
Zabbix Conference Japan 2013 VMware monitoringZabbix Conference Japan 2013 VMware monitoring
Zabbix Conference Japan 2013 VMware monitoring雄也 日下部
 

More from 雄也 日下部 (12)

GoでEPC作って本番運用している話
GoでEPC作って本番運用している話GoでEPC作って本番運用している話
GoでEPC作って本番運用している話
 
VyOS Users Meeting Japan #4 VyOS 1.2.0の開発の様子と自動テストの話
VyOS Users Meeting Japan #4 VyOS 1.2.0の開発の様子と自動テストの話VyOS Users Meeting Japan #4 VyOS 1.2.0の開発の様子と自動テストの話
VyOS Users Meeting Japan #4 VyOS 1.2.0の開発の様子と自動テストの話
 
20141121 zabbix conference_japan_2014_nifty_kusakabe
20141121 zabbix conference_japan_2014_nifty_kusakabe20141121 zabbix conference_japan_2014_nifty_kusakabe
20141121 zabbix conference_japan_2014_nifty_kusakabe
 
CoreOS OEM on NIFTY Cloud - CoreOS Meetup Tokyo #1 #coreosjp
CoreOS OEM on NIFTY Cloud - CoreOS Meetup Tokyo #1 #coreosjpCoreOS OEM on NIFTY Cloud - CoreOS Meetup Tokyo #1 #coreosjp
CoreOS OEM on NIFTY Cloud - CoreOS Meetup Tokyo #1 #coreosjp
 
Building and Customizing CoreOS
Building and Customizing CoreOSBuilding and Customizing CoreOS
Building and Customizing CoreOS
 
20141102 VyOS 1.1.0 and NIFTY Cloud New Features
20141102 VyOS 1.1.0 and NIFTY Cloud New Features20141102 VyOS 1.1.0 and NIFTY Cloud New Features
20141102 VyOS 1.1.0 and NIFTY Cloud New Features
 
JANOG 34 LT VyOS
JANOG 34 LT VyOSJANOG 34 LT VyOS
JANOG 34 LT VyOS
 
VYATTA USERS MEETING Spring 2014 VyOS
VYATTA USERS MEETING Spring 2014 VyOSVYATTA USERS MEETING Spring 2014 VyOS
VYATTA USERS MEETING Spring 2014 VyOS
 
VYATTA USERS MEETING Spring 2014 NIFTY Cloud
VYATTA USERS MEETING Spring 2014 NIFTY CloudVYATTA USERS MEETING Spring 2014 NIFTY Cloud
VYATTA USERS MEETING Spring 2014 NIFTY Cloud
 
Zabbix Conference Japan 2013 VMware monitoring
Zabbix Conference Japan 2013 VMware monitoringZabbix Conference Japan 2013 VMware monitoring
Zabbix Conference Japan 2013 VMware monitoring
 
jvum2013a niftycloud
jvum2013a niftycloudjvum2013a niftycloud
jvum2013a niftycloud
 
Jvum2013s niftycloud
Jvum2013s niftycloudJvum2013s niftycloud
Jvum2013s niftycloud
 

VyOSでMPLS

  • 1. Copyright © NIFTY Corporation All Rights Reserved. VyOSでMPLS ニフティ株式会社 日下部 雄也
  • 2. Copyright © NIFTY Corporation All Rights Reserved. 2 自己紹介  Twitter/GitHub: higebu  ニフティクラウド  仮想ネットワーク  DRサービス with VMware vCloud® Air™ Technology  その他  VyOS  コミット権持ってる  vyos-users.jp
  • 3. Copyright © NIFTY Corporation All Rights Reserved. 3 ニフティクラウドとVyOS  VPNゲートウェイとルーターという機能で 使っている  数百台動いている  ちょっと改造してる  L2フィルタ  Managed L2TPv3  その他バグ修正 後輩の蓮沼くん 最近は彼が直している
  • 4. Copyright © NIFTY Corporation All Rights Reserved. 4 ニフティクラウドとMPLS  物理ネットワークの人に聞いたところ、 ちょっと使ってるらしい  MPLSが盛り上がったのは数年前なので今 さら話してもという感じらしい
  • 5. Copyright © NIFTY Corporation All Rights Reserved. 5 新しいVyOS  Debian Jessieベース  Systemd…  Linux Kernel 4.4系  MPLS使える  詳しくはWebで  http://vyos.net/wiki/Beryllium  https://www.higebu.com/blog/2016/02/ 26/2016-02-26-vyos-beryllium/
  • 6. Copyright © NIFTY Corporation All Rights Reserved. 6 新しいVyOSを動かす  ISOからインストールするのが面倒なので、とり あえずインストール済みのVMイメージを使う  https://github.com/higebu/vyos- build/releases/tag/1.2.0-higebu5  1.2.0正式リリース時にはVMイメージもリリー スされるはず
  • 7. Copyright © NIFTY Corporation All Rights Reserved. 7 iproute2をv4.4.0にする  vyos/vyatta-iprouteというリポジトリがあるの で、それを使う  4.4.0にしてビルドしたパッケージはこちら  https://github.com/higebu/vyatta- iproute/releases/tag/debian%2F4.4.0-1vyos2  4.4.0にした方がよくない?と言ったら昨晩本体 も4.4.0になったけどちょっとおかしいので後で 直したい  未だに”iproute”パッケージしかビルドしてない  DebianのパッケージがISOに入ってしまってるよう に見える  さっき見たら修正したISOできてた – UnicronNLさん仕事早すぎる
  • 8. Copyright © NIFTY Corporation All Rights Reserved. 8 iproute2をv4.4.0にする dpkg -l | grep iproute ii iproute 1:3.16.0-2 all transitional dummy package for iproute2 ii iproute2 3.16.0-2 amd64 networking and traffic control tools dpkg -i iproute_4.4.0-1vyos2_all.deb iproute2_4.4.0- 1vyos2_amd64.deb dpkg -l | grep iproute ii iproute 1:4.4.0-1vyos2 all transitional dummy package for iproute2 ii iproute2 1:4.4.0-1vyos2 amd64 networking and traffic control tools ※最新のISOを使う場合、この手順はいらないです
  • 9. Copyright © NIFTY Corporation All Rights Reserved. 9 MPLSを試してみる  Linux kernel 4.3.0から使えるようになった  4.4でMultipath routingがサポートされた  https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.g it/commit/?id=f8efb73c97e2fa0abbe2e07c5c5df07800312 643  https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.g it/commit/?id=1c78efa8319cad2f10f421afa627745fb4d9b 29f  BrocadeやCumulusの方だ…  VyOSのカーネルが4.4になって使えそうなので 試してみる  内容は MPLS testbed on Ubuntu Linux with kernel 4.3 と同じです
  • 10. Copyright © NIFTY Corporation All Rights Reserved. 10 MPLSを試してみる  動くかどうか見たいだけなのでとりあえず1ノー ドでNetwork Namespace作って試す netns host1 veth1 netns host2 veth3 veth0 veth2 lo lo 10.3.3.1/24 10.4.4.1/24 10.10.10.1/3210.3.3.2/24 10.4.4.2/2410.10.10.2/32 Label: 111 Label: 112 VyOS
  • 11. Copyright © NIFTY Corporation All Rights Reserved. 11 MPLSを試してみる modprobe mpls_router modprobe mpls_iptunnel modprobe mpls_gso sysctl -w net.mpls.platform_labels=1000 モジュールをロードして、ラベルの最大値を設定する
  • 12. Copyright © NIFTY Corporation All Rights Reserved. 12 MPLSを試してみる ip link add veth0 type veth peer name veth1 ip link add veth2 type veth peer name veth3 sysctl -w net.mpls.conf.veth0.input=1 sysctl -w net.mpls.conf.veth2.input=1 ifconfig veth0 10.3.3.1/24 up ifconfig veth2 10.4.4.1/24 up ip netns add host1 ip netns add host2 ip link set veth1 netns host1 ip link set veth3 netns host2 ip netns exec host1 ifconfig lo 10.10.10.1/32 up ip netns exec host1 ifconfig veth1 10.3.3.2/24 up ip netns exec host2 ifconfig lo 10.10.10.2/32 up ip netns exec host2 ifconfig veth3 10.4.4.2/24 up ip netns exec host1 ip route add 10.10.10.2/32 encap mpls 112 via inet 10.3.3.1 ip netns exec host2 ip route add 10.10.10.1/32 encap mpls 111 via inet 10.4.4.1 ip -f mpls route add 111 via inet 10.3.3.2 ip -f mpls route add 112 via inet 10.4.4.2 veth作ってnetns作ってmplsの設定をする
  • 13. Copyright © NIFTY Corporation All Rights Reserved. 13 MPLSを試してみる ip netns exec host1 ip route 10.3.3.0/24 dev veth1 proto kernel scope link src 10.3.3.2 10.10.10.2 encap mpls 112 via 10.3.3.1 dev veth1 ip netns exec host2 ip route 10.4.4.0/24 dev veth3 proto kernel scope link src 10.4.4.2 10.10.10.1 encap mpls 111 via 10.4.4.1 dev veth3 ip -M route 111 via inet 10.3.3.2 dev veth0 112 via inet 10.4.4.2 dev veth2 ルートが入っているか確認
  • 14. Copyright © NIFTY Corporation All Rights Reserved. 14 MPLSを試してみる ip netns exec host2 ping 10.10.10.1 -I 10.10.10.2 PING 10.10.10.1 (10.10.10.1) from 10.10.10.2 : 56(84) bytes of data. 64 bytes from 10.10.10.1: icmp_seq=1 ttl=63 time=0.131 ms 64 bytes from 10.10.10.1: icmp_seq=2 ttl=63 time=0.085 ms 64 bytes from 10.10.10.1: icmp_seq=3 ttl=63 time=0.119 ms tcpdump -envi veth0 tcpdump: listening on veth0, link-type EN10MB (Ethernet), capture size 262144 bytes 12:31:55.328221 0e:5c:af:ae:ad:68 > 76:3c:bd:ec:13:ac, ethertype IPv4 (0x0800), length 98: (tos 0x0, ttl 63, id 10742, offset 0, flags [DF], proto ICMP (1), length 84) 10.10.10.2 > 10.10.10.1: ICMP echo request, id 2865, seq 27, length 64 12:31:55.328246 76:3c:bd:ec:13:ac > 0e:5c:af:ae:ad:68, ethertype MPLS unicast (0x8847), length 102: MPLS (label 112, exp 0, [S], ttl 64) (tos 0x0, ttl 64, id 62371, offset 0, flags [none], proto ICMP (1), length 84) 10.10.10.1 > 10.10.10.2: ICMP echo reply, id 2865, seq 27, length 64 host2のloからhost1のloにping通るか試す(Label: 112) MPLSのラベルが付いているか確認する
  • 15. Copyright © NIFTY Corporation All Rights Reserved. 15 今後の予定  MPLSのコマンド作る?  早く1.2.0正式版リリースしないと…  ニフティクラウドのネットワーク周りの機 能アップデートにもご期待ください