SDN開発エンジニアを目指した活動ブログ

〜SDNなオープンソース製品を実際に使って試してみる〜

Python / JUNOS環境で、NETCONF動作を試してみる

SDN時代のインフラ構築には、APIベースの設定作業が標準になりつつあります。 通常、仮想VMであれば、OpenStackなどが活用されるところでしょう。 SDNインフラ環境でも既存ネットワークとの相互運用は必須になりますが、NW機器での諸設定が従来通りの手作業…

vSRXを活用した、JUNOSのお勉強まとめ【mpBGP / MPLS-VPN 続編】

今回も、引き続き、JUNOSのお勉強メモです。 ttsubo.hatenablog.com前回は、PE - CE間は、Staticルーティングを前提としておりました。 今回は、PE - CE間で、eBGPによるダイナミックルーティングの設定に変更します。 ◼︎ vSRXトポロジ構成 だんだんと、トポ…

vSRXを活用した、JUNOSのお勉強まとめ【mpBGP / MPLS-VPN編】

今回も、引き続き、JUNOSのお勉強メモです。 ttsubo.hatenablog.com ◼︎ 前回の記事での技術課題 エンド端末間での疎通確認において、エンド端末"pc1"から、エンド端末"pc2"側"10.0.0.1"に対して、pingをうってみたところ、 pingは成功した。この時、pc2側で…

vSRXを活用した、JUNOSのお勉強まとめ【OSPF + MPLS編】

今回も、引き続き、JUNOSのお勉強メモです。 ttsubo.hatenablog.com ◼︎ vSRXトポロジ構成 今回は、vSRX3台構成としました。 [ AS: 65000 ] [ AS: 65000 ] 10.0.0.1 10.0.0.2 10.0.0.3 +-----+ +--------+ +--------+ +--------+ +-----+ | | 172.16.0.0/30 …

vSRXを活用した、JUNOSのお勉強まとめ【JUNOS初期設定 + BGP基本編】

これから、しばらく、ネットワーク技術のお勉強に時間を費やしたいと思います。 ネットワークのお勉強の素材としては、「Junos設定&管理完全Bible」を選びました。 ただ、こちらの書籍なんですが、すでに、在庫が存在しておらず、中古品をゲットすることに…

etcdの分散Key-Valuesストアを試してみる

CoreOSが提供するetcdの動作をお手軽に試してみました。 なお、etcdとは、分散Key-Valuesストアを使い,各種設定をノード間で共有するメカニズムだそうです。 etcd is a distributed key value store that provides a reliable way to store data across a c…

SDNアプローチによるBGP経路監視を試してみる

「ネットワーク運用の自動化」として、BGP経路監視を考察してみたいと思います。 NetOpsCoding Advent Calendar 2015 12/12分のエントリーです qiita.com ◾️ ”BGP運用”という言葉から想定されるイメージ BGP運用というと、なんとなく「BGP職人さん」という言…

Mac OS X環境のVMware Fusion上で、vSRXを動かす

これまで、JUNOSを扱った経験がなかったので、vSRXを用いてJUNOSの勉強環境を作成したいと思います。 こちらが、参考にさせて頂いたslideshareです。 vSRX on Your Laptop : PCで始めるvSRX ~JUNOSをさわってみよう!~ from Juniper Networks (日本) www.s…

Ryu SDN Frameworkで、VRRP動作を試してみる

これまで、あまり知られておりませんでしたが、Ryu SDN Frameworkでは、VRRP機能を動作させることができます。 VRRP機能を自由に操れるようになれば、柔軟なネットワーク冗長構成も構築できそうです。 今回の元ネタは、こちらになります。 http://ryu.readth…

Pythonベースで、GoBGPを制御してみる 〜gRPC活用編〜

[ 2016.4.30修正:GoBGP最新版への対応 ] GoBGPは、golangベースのBGPエンジンであり、経路追加などの設定コマンド等も、golangで実装されております。 今回は、Ryu SDN Frameworkとの連携を見据えて、PythonベースでGoBGPを制御する手法を試してみたいと思…

GoBGPでの内部構造で活用されている"gRPC"の仕組みを体験してみる

[ 2016.4.29修正:gRPC最新版への対応 ] 最近、GoBGPでの内部構造として活用されている"gRPC"に興味を持ち始めました。 GoBGP実践活用として、Ryu SDN Framework連携を実現するためには、gRPC技術の修得が必要不可欠になりそうなので、まずは、gRPCを体験す…

GoBGPを活用して、BGP動作を体験してみる 〜環境準備編〜

[ 2016.4.29修正:gobgp最新版への対応 ] これまで、RyuBGPSpeakerを活用して、SDN分野におけるBGP技術の有用性を試してきました。 SDN分野におけるBGP新技術を活用したユースケースが、IETF等でいろいろ議論されておりますので、今後も、 SDN分野でBGP新技…

golangで開発アプリのコマンドインタフェースを拡張するには ...

今回は、golangでコマンドインタフェースの定義する際の自分用メモです。 以下の外部アプリを組み込むと、簡単にコマンドインタフェースが拡張できるみたいです。spf13/cobragithub.comOMGが定めた分散オブジェクト技術の仕様"CORBA"とは、何の関係ありませ…

SDN Lab環境でのRobot Framework実践活用

最近、オープンソース系ソフトウェアを独自カスタマイズしてプロダクト化する事例が増えている気がします。 これからのSDN/NFV分野では、ホワイトボックス化されたネットワーク機器にオープンソース系ソフトウェアを搭載して仮想アプライアンスとして導入す…

Docker環境で、MPLS-VPNネットワークを体験してみる

今回は、巷で流行りのDockerのネタです。 以前より、Dockerを活用すれば、SDN技術要素を習得するための自前SDNラボ環境を簡易に構築することが可能となるので、ぜひ習得しておきたい技術だと考えておりました。 そんな折に、たまたま、過去の沖縄オープンラ…

Ryu BGPSpeakerの実践活用へのチャレンジ 〜BMPの基本確認編〜

以前、Ryu BGPSpeakerを活用して、OpenFlowベースのBGPルータとして動作するところまで確認できました。 詳細は、slideshareにアップしておきました。 今回は、BGPプロトコルのモニタリング機能を試してみます。 RyuBGPSpeakerを活用したOpenFlow簡易ルータ…

Ryu BGPSpeakerの実践活用へのチャレンジ 〜BGP/OpenFlow連携編〜

これまで、OpenFlow簡易ルータ作成を通じて、SDN/OpenFlow的な実装テクニックでも市販ルータ相当なIPルーティング制御が可能であることを確認してきました。しかしながら、これまでのOpenFlow簡易ルータでは、デフォルト・ルーティングしか対応していないた…

RouterBOARD (RB750GL)のOpenFlow化へのチャレンジ 〜OpenFlow動作確認編〜

前回は、RouterBOARD (RB750GL)のOpenvSwitch環境を構築しましたので、実際に、OpenFlowプロトコル動作させてみて、各種挙動を確認してみたいと思います。 RouterBOARD (RB750GL)のOpenFlow化へのチャレンジ 〜OpenvSwitch構築手順メモ編〜 - SDN開発エンジ…

RouterBOARD (RB750GL)のOpenFlow化へのチャレンジ 〜OpenvSwitch構築手順メモ編〜

今回は、RouterBOARD (RB750GL)をOpenFlow化して、OpenFlow基本動作を確認するというチャレンジになります。 こちらが、OpenFlow化したRouterBOARD (RB750GL)です。さらに、OpenWRT化に対応したOpenvSwitch 2.3.0版パッケージを搭載しているので、ユーザラン…

Ryu SDN FrameworkのBGP機能を試してみた(4) 〜Ryu BGPSpeaker再検証〜

前回は、Ryu BGPSpeakerを活用したInterAS MPLS-VPN環境において、BGP基本動作を確認しました。 InterAS MPLS-VPN with RyuBgp from Toshiki Tsuboi 当時の動作確認では、i-BGPまわりの基本パラメータ未対応など、実用面での課題が判明しました。 ◆最近のRyu…

Ryu SDN FrameworkのBGP機能を試してみた(3) 〜InterAS接続編 その2〜

前回は、既存のBGP/MPLS VPN網とのInterAS接続によりBGP情報の共有を図ることができました。 ただし、ネットワーク拡張性を想定すると、前回モデルでは、スケール性に課題があります。今回は、InterAS MPLS VPNにおけるボーダールータとしてRyu BGPを配備し…

Ryu SDN FrameworkのBGP機能を試してみた(2) 〜InterAS接続編 その1〜

前回は、BGP/MPLS VPN網のエッジルータ適用でのコントロールプレーンの挙動を確認しました。しかし、実際にエッジルータ適用を想定した場合には、OSPFルーティングドメインへの参加や、トンネルMPLSラベル制御を含めたデータプレーン連携の実装が必要不可欠…

Ryu SDN FrameworkのBGP機能を試してみた(1) 〜BGP/MPLS網でのエッジルータ適用編〜

最新のRyu SDN Frameworkでは、BGPルーティング機能(以下、Ryu BGP)が活用できるようになったらしいです。 Ryu公式ドキュメントにも、API仕様やサンプルコードが公開されておりますね。 BGP speaker library API Reference — Ryu 3.12 documentation BGP s…

OpenStackメッセージング機構を探ってみる(4) 〜Call(情報照会)編〜

前回につづいて、OpenStackメッセージング機構を探ってみる。 ◆前回までのおさらい OpenStackメッセージング機構を体感するために、以下の例題を解決する実現モデルを考えてみる。 1. 例題 実験環境は、サーバ装置1台と、クライアント装置2台で構成されて…

OpenStackメッセージング機構を探ってみる(3) 〜Cast(特定通知)編〜

前回につづいて、OpenStackメッセージング機構を探ってみる。 ◆前回のおさらい OpenStackメッセージング機構を体感するために、以下の例題を解決する実現モデルを考えてみる。 1. 例題実験環境は、サーバ装置1台と、クライアント装置2台で構成されている。…

OpenStackメッセージング機構を探ってみる(2) 〜Fanout(同報通知)編〜

前回、OpenStackメッセージング機構を探るための実験環境が構築できた。 OpenStackメッセージング機構を探ってみる(1) 〜環境構築編〜 - SDN開発エンジニアを目指した活動ブログ 今回から、OpenStack開発エンジニアを目指して、OpenStackメッセージング機…

OpenStackメッセージング機構を探ってみる(1) 〜環境構築編〜

今回から、OpenStackで活用されているメッセージング機構を調べてみる。 以前のOpenStackユーザ会での講演資料「OpenStack を支える メッセージングの基礎」あたりの理解から始めてみる。 http://openstack.jp/assets/files/20121216/osc2012cloudjosugamqpv…

Python勉強メモ:特殊メソッド__getattribute__とは?

Pythonを勉強しているなかで、特殊メソッド__getattribute__に遭遇したので、ちょっと調べてみた。 どうやら、__getattribute__のほかにも、__getattr__なるものがあるらしい。 ・__getattr__:未定義のメンバーにアクセスする際に呼び出される。 ・__getatt…

家庭用BuffaloルータのOpenFlow化へのチャレンジ 〜OpenvSwitch構築手順メモ編〜

前回、家庭用Buffaloルータ”BHR-4GRV"をOpenFlow化して、OpenFlow基本動作を確認しました。 家庭用BuffaloルータのOpenFlow化へのチャレンジ 〜OpenFlow1.3動作確認編〜 - SDN開発エンジニアを目指した活動ブログ SDN/OpenFlowの実験環境で、OpenFlowスイッ…

家庭用BuffaloルータのOpenFlow化へのチャレンジ 〜OpenFlow1.3動作確認編〜

これまでも、Linuxボックス"DNA940"を活用してSDN/OpenFlow環境を構築してきました。ただし、汎用性の乏しいLinuxボックス構成だったので、SDN/OpenFlow環境としてOpenFlowスイッチ台数を増やすことが困難でした。今回は、もっと簡易にOpenFlowスイッチ台数…