Openconfigを用いたネットワーク機器操作

Similar documents
Inter-IX IX/-IX 10/21/2003 JAPAN2003 2

Juniper Networks Corporate PowerPoint Template

橡3-MPLS-VPN.PDF

untitled

Microsoft PowerPoint - JANOG25_junoscript_

ループ防止技術を使用して OSPFv3 を PE-CE プロトコルとして設定する

untitled

untitled

宛先変更のトラブルシューティ ング

SRX License

shtsuchi-janog35.5-grnet.pptx

Clos IP Fabrics with QFX5100 Switches

PowerPoint Presentation

自分のコンピュータを設定する方法 自分のコンピュータでこのラボの作業を行うには Putty や Terminal などの SSH クライアントが必要です また ネットワークプログラマビリティのラボにアクセスできる必要もあります このラボの作業を行うには 事前設定済みの dcloud ラボを使用するか

PowerPoint プレゼンテーション

JANOG14-コンバージェンスを重視したMPLSの美味しい使い方

SCREENOS NAT ScreenOS J-Series(JUNOS9.5 ) NAT ScreenOS J-Series(JUNOS9.5 ) NAT : Destination NAT Zone NAT Pool DIP IF NAT Pool Egress IF Loopback Grou

U コマンド

Dynamic VPN Dynamic VPN IPSec VPN PC SRX IPSec VPN SRX PC IPSec 2 Copyright 2010 Juniper Networks, Inc.

本日のお話 運用 / 運用システムの現状 ネットワーク運用の自動化のススメ 1) ネットワーク管理の自動化 2) ネットワーク工事 ( 設定 ) の自動化 3) ネットワーク運用時 ( 障害時 ) の自動化 Copyright 2012 NTT Communications Corporation.

EtherChannelの設定

今日のトピック 実験結果の共有 RPKI/Router 周りの基本的な動き 今後の課題と展望 2012/7/6 copyright (c) tomop 2

初めてのBFD

MLDS.dvi

migrating_to_2-node_cluster_flyer.ps

アライドテレシス ディストリビューションスイッチ x610シリーズで実現するVRF-Lite + Tagging + EPSR for x610

アドレス プールの設定

IPSEC-VPN IPsec(Security Architecture for Internet Protocol) IP SA(Security Association, ) SA IKE IKE 1 1 ISAKMP SA( ) IKE 2 2 IPSec SA( 1 ) IPs

IGMPS.dvi

実習 : シングルエリアでの OSPFv3 の基本設定 トポロジ 2014 Cisco and/or its affiliates. All rights reserved. This document is Cisco Public. 1 / 11 ページ

untitled

janog40-abst-shtsuchi-01

外部ルート向け Cisco IOS と NXOS 間の OSPF ルーティング ループ/最適でないルーティングの設定例

IPIP(Si-RGX)

VyOSではじめるBGPルータ

D-3案

Congress Deep Dive

橡2-TrafficEngineering(revise).PDF

Telemetry Collectorの開発

All Rights Reserved. Copyright(c)1997 Internet Initiative Japan Inc. 1

PowerPoint プレゼンテーション

Microsoft PowerPoint - Amazon VPCとのVPN接続.pptx

経路奉行の取り組み

リング型IPカメラ監視ソリューション(マルチキャスト編)

Cisco Umbrella Branch Cisco Umbrella Branch Cisco ISR Umbrella Branch

設定例集_Rev.8.03, Rev.9.00, Rev.10.01対応

VyattaでのPPPoEとNetwork emulator

2011 NTT Information Sharing Platform Laboratories

ECL2.0 ロードバランサーNetScaler VPX 10.5 VRRP設定

total.dvi

アライドテレシス ディストリビューション・スイッチ AT-x600シリーズで実現するMicrosoft® NAP

CCIE IP Anycast RP Anycast RP Anycast RP Anycast RP PIM-SM RP RP PIM-SM RP RP RP PIM Register RP PIM-SM RP PIM-SM RP RP RP RP Auto RP/BSR RP RP RP RP

00.目次_ope

目次 項 -1 Cisco 編 3 項 -2 ARRIS 編 (Cable Modem のIPv6 化版 ) 6 項 -3 ARRIS 編 (MDF 変更版 ) 8

リング型IPカメラ監視ソリューション

BGP ( ) BGP4 community community community community July 3, 1998 JANOG2: What is BGP Community? 2

このシステムは InfiniBand ARP で 3500 エントリー Ethenet を 100 エントリー迄サポートすることが出来ます Proxy-ARP は 下図のように IP アドレス VLAN およびサブネットの PKEY 値を持つ論理インターフェースです 現時点で Proxy-ARP イ

IPIP(Si-RG)

URL ACL(Enhanced)導入ガイド

P コマンド

LSM-L3-24設定ガイド(初版)

2 BIG-IP 800 LTM v HF2 V LTM L L L IP GUI VLAN.

FS_handbook.indd

intra-mart Accel Platform — IM-Repository拡張プログラミングガイド   初版  

PIM-SSMマルチキャストネットワーク

Win XP SP3 Japanese Ed. NCP IPSec client Hub L3 SW SRX100 Policy base VPN fe-0/0/0 vlan.0 Win 2003 SVR /

なお ここでは ECL2.0 のロジカルネットワークを下記のような設定で作成しております お客さまの NW 構成に応じて適宜 アドレスを変更してください ロジカルネットワーク1( インターネット側 ) サブネット名 :sub-nw-inet 01 ネットワークアドレス : /

IIJ Technical WEEK SEILシリーズ開発動向:IPv6対応の現状と未来

WLC で画面設定をキャストするための mDNS サービスとしての Chromecast

MPLS-VPN とは C 社を中心として RFC2547(Informational) に記された ISP サービスとしての IP-VPN 実現技術 網内パケット転送に MPLS(LDP/TDP) VPN 経路情報交換に BGP(mpBGP:RFC2283) を使用 ルーティングプロトコルがエッジ

Microsoft PowerPoint - janog15-irr.ppt

アジェンダ 会社紹介 OFCONFIGについて NETCONFおよびYANGについて OFCONFIGユースケース A.I.Corporation 2

設定手順

$ ifconfig lo Link encap: inet : : inet6 : ::1/128 : UP LOOPBACK RUNNING MTU:65536 :1 RX :8 :0 :0 :0 :0 TX :8 :0 :0 :0 :0 (Collision

IPv6 への移行に関する ケーブルテレビ事業者リファレンスモデル IPv6 普及 高度化推進協議会 ビジネステストベッド WG 2011 年 9 月

PowerPoint プレゼンテーション

BGP/MPLS-VPN とは ルータによる 多様な IF による提供が可能 (ATM~ HSD などの非対称構成も可能 ) 暗号に頼らないセキュリティの確保が可能 (FR などと同等の機能を IP ネットワークで実現 ) お客様側への特別な装置が不要 (a)ipsec-vpn 方式 暗号化装置 (

RT107eセミナー用資料

18.pdf

改訂履歴 版番号改訂日改訂者改訂内容 年 2 月 3 日ネットワールド 新規 I

FW Migration Guide (Single)

NAC(CCA): ACS 5.x 以降を使用した Clean Access Manager での認証の設定

2 PC [1], [2], [3] 2.1 OS 2.1 ifconfig 2.1 lo ifconfig -a 2.1 enp1s0, enx0090cce7c734, lo 3 enp1s0 enx0090cce7c734 PC 2.1 (eth0, eth1) PC 14

FW Migration Guide(ipsec2)

はじめに xsp のルータにおいて設定を推奨するフィルタの項目について の IPv6 版 最低限 設定することが推奨されるフィルタ について まず議論したい 接続形態に変化はないので IPv6 対応をメインに IETF draft RIR でproposal 進行中のものについては今回の検討外とした

詳細設定

EPSRスーパーループプリベンション(SLP) ネットワーク

$ ifconfig lo Link encap: inet : : inet6 : ::1/128 : UP LOOPBACK RUNNING MTU:65536 :1 RX :8 :0 :0 :0 :0 TX :8 :0 :0 :0 :0 (Collision

改訂履歴 版番号改訂日改訂者改訂内容 年 2 月 5 日ネットワールド 新規 I

ユニキャスト RIB および FIB の管理

IP 2.2 (IP ) IP 2.3 DNS IP IP DNS DNS 3 (PC) PC PC PC Linux(ubuntu) PC TA 2

Juniper Networks EVPN Implementation for Next-Generation Data Center Architectures

MIB サポートの設定

Juniper Networks EXシリーズ

事例から学ぶIPv6トラブルシューティング~ISP編~

directions

SRT/RTX/RT設定例集

<4D F736F F F696E74202D C F815B834E95D2836E E9197BF76322E312D8CF68A4A97702E B8CDD8AB B83685D>

JUNOSインターネットソフトウェアとIOSのコンフィグレーション変換

Transcription:

OpenConfig を いたネットワーク機器操作 本電信電話株式会社 ソフトウェアイノベーションセンタ 市原裕史

紹介 市原裕史 所属 NTT SIC 第三推進プロジェクト OpenStack Developer Neutron Core Reviewer その他プロジェクトへの貢献 技術 : SDN/NFV 中 パブリッククラウドの開発 LinuxconでDPDKの性能の発表 Neutronへの機能提案 2

OpenConfig へのモチベーション この領域はベンダロックインのない抽象化された API がない データセンター この領域はベンダロックインのない抽象化された API が存在する 3

OpenConfig ネットワーク機器の API にベンダニュートラルなモデルを提供することを 的としたワーキンググループ名 Cisco オペレータ オーケストレータ 動スクリプト 共通モデル Juniper Arista??? 4

OpenConfig 取り組み 共通モデルの作成 ベンダニュートラルなモデル Telemetry の置き換え SNMP よりもスケールし 拡張性が い 共通のネットワーク管理インターフェースの作成 grpc Network Management Interface(gNMI) ベンダ主導ではなくオペレータ主導 5

OpenConfig 現在定義済みのモデル 出典 : http://www.openconfig.net/projects/models/ 6

OpenConfig モデル例 interfaces module: openconfig-interfaces + --rw interfaces + --rw interface* [name] + --rw name - >../config/ name + --rw config + --rw type identityref + --rw mtu? uint16 + --rw name? string + --rw description? string + --rw enabled? boolean + --ro state + --ro type identityref + --ro mtu? uint16 + --ro name? string + --ro description? string + --ro enabled? boolean + --ro ifindex? uint32 + --ro admin-status enumeration + --ro oper-status enumeration + --ro last-change? yang:timeticks + --ro counters + --ro in-octets? yang:counter64 + --ro in-unicast-pkts? yang:counter64 + --ro in-broadcast-pkts? yang:counter64 + --ro in-multicast-pkts? yang:counter64 + --ro in-discards? yang:counter64 + --ro in-errors? yang:counter64 + --ro in-unknown-protos? yang:counter32 + --ro out-octets? yang:counter64 + --ro out-unicast-pkts? yang:counter64 + --ro out-broadcast-pkts? yang:counter64 + --ro out-multicast-pkts? yang:counter64 + --ro out-discards? yang:counter64 + --ro out-errors? yang:counter64 + --ro last-clear? yang:date-and-time + --rw hold-time + --rw config + --rw up? uint32 + --rw down? uint32 + --ro state + --ro up? uint32 + --ro down? uint32 + --rw subinterfaces + --rw subinterface* [index] + --rw index - >../config/ index + --rw config + --rw index? uint32 + --rw name? string + --rw description? string + --rw enabled? boolean + --ro state + --ro index? uint32 + --ro name? string + --ro description? string + --ro enabled? boolean + --ro ifindex? uint32 + --ro admin-status enumeration + --ro oper-status enumeration + --ro last-change? yang:timeticks + --ro counters + --ro in-octets? yang:counter64 + --ro in-unicast-pkts? yang:counter64 + --ro in-broadcast-pkts? yang:counter64 + --ro in-multicast-pkts? yang:counter64 + --ro in-discards? yang:counter64 + --ro in-errors? yang:counter64 + --ro in-unknown-protos? yang:counter32 + --ro out-octets? yang:counter64 + --ro out-unicast-pkts? yang:counter64 + --ro out-broadcast-pkts? yang:counter64 + --ro out-multicast-pkts? yang:counter64 + --ro out-discards? yang:counter64 + --ro out-errors? yang:counter64 + --ro last-clear? yang:date-and-time 出典 : https://github.com/openconfig/public/blob/master/release/models/interfaces/openconfig-interfaces.yang 7

OpenConfig メンバー 出典 : http://openconfig.net/about/participants/ 8

デモ構成 vmx 17.2R1.13 iosxrv 9k demo 6.1.2 Ubuntu 16.04 vmx1 (bgp 65101) ge-0/0/0 10.10.0.0/24.10.20 XRv (bgp 65102) GigabitEthernet0/0/0/0 GigabitEthernet0/0/0/1 11.11.0.0/24 vmx2 (bgp 65103).20.10 ge-0/0/0 ge-0/0/1 10.1.1.1/24 ge-0/0/1 20.1.1.1/24 10.1.1.100/24 20.1.1.200/24 ClientA ClientB 9

デモ 1 vmx と XRv へ MTU 設定 vmx1 XRv ge-0/0/0 MTU 1400 GigabitEthernet0/0/0/0 MTU 1400 <config> <interfaces xmlns="http://openconfig.net/yang/interfaces"> <interface> <name> インターフェース名 </name> <config> <type xmlns:idx="urn:ietf:params:xml:ns:yang:iana-if-type">idx:ethernetcsmacd</type> <mtu>1400</mtu> </interface> </interfaces> 10

デモ 2 インターフェース BGP Routing-policy を設定し ClientA と ClientB 間で疎通確認 vmx1 (bgp 65101) ge-0/0/0 10.10.0.0/24.10.20 XRv (bgp 65102) GigabitEthernet0/0/0/0 GigabitEthernet0/0/0/1 11.11.0.0/24 vmx2 (bgp 65103).20.10 ge-0/0/0 ge-0/0/1 10.1.1.1/24 ge-0/0/1 20.1.1.1/24 10.1.1.100/24 20.1.1.200/24 ClientA ClientB 11

デモ 2 config vmx1.xml < interfaces xmlns="http://openconfig.net/ yang/ interfaces"> < interface> < name>ge- 0/0/0</name> < subinterfaces> < subinterface> < index>0</index> < index>0</index> <ipv4 xmlns="http://openconfig.net/ yang/ interfaces/ ip"> < addresses> < address> < ip>10.10.0.10</ip> < ip>10.10.0.10</ip> < prefix- length>24</prefix- length> </address> </addresses> </ipv4> </subinterface> </subinterfaces> </interface> < interface> < name>ge- 0/0/1</name> < subinterfaces> < subinterface> < index>0</index> < index>0</index> <ipv4 xmlns="http://openconfig.net/ yang/ interfaces/ ip"> < addresses> < address> < ip>10.1.1.1</ip> < ip>10.1.1.1</ip> < prefix- length>24</prefix- length> </address> </addresses> </ipv4> </subinterface> </subinterfaces> </interface> </interfaces> <routing- policy xmlns="http://openconfig.net/ yang/routing- policy"> < policy- definitions> < policy- definition> < name> bgp- in</name> < statements> < statement> < name> bgp- in</name> < actions> < accept- route/> </actions> </statement> </statements> </policy- definition> < policy- definition> < name> bgp- out</name> < statements> < statement> < name> bgp- out</name> < actions> < accept- route/> </actions> </statement> </statements> </policy- definition> </policy- definitions> </routing- policy> < bgp xmlns="http://openconfig.net/ yang/ bgp"> <global> < as>65101</as> < router- id>10.10.0.10</router- id> < afi- safis> < afi- safi> < afi- safi- name xmlns:idx="http://openconfig.net/ yang/ bgp- types">idx:ipv4_unicast</afi- safi- name> </afi- safi> </afi- safis> </global> < neighbors> < neighbor> < neighbor- address>10.10.0.20</neighbor- address> <peer- group>group65102</peer- group> < neighbor- address>10.10.0.20</neighbor- address> < afi- safis> < afi- safi> < afi- safi- name xmlns:idx="http://openconfig.net/ yang/ bgp- types">idx:ipv4_unicast</afi- safi- name> </afi- safi> </afi- safis> < apply- policy> <import- policy> bgp- in</import- policy> <export- policy> bgp- out</export- policy> </apply- policy> </neighbor> </neighbors> <peer- groups> <peer- group> <peer- group- name>group65102</peer- group- name> <peer- as>65102</peer- as> </peer- group> </peer- groups> </bgp> xrv.xml < interfaces xmlns="http://openconfig.net/ yang/ interfaces"> < interface> < name>gigabitethernet0/0/0/0</name> < subinterfaces> < subinterface> < index>0</index> < index>0</index> <ipv4 xmlns="http://openconfig.net/ yang/ interfaces/ ip"> < address> < ip>10.10.0.20</ip> < ip>10.10.0.20</ip> < prefix- length>24</prefix- length> </address> </ipv4> </subinterface> </subinterfaces> </interface> < interface> < name>gigabitethernet0/0/0/1</name> < subinterfaces> < subinterface> < index>0</index> < index>0</index> <ipv4 xmlns="http://openconfig.net/ yang/ interfaces/ ip"> < address> < ip>11.11.0.20</ip> < ip>11.11.0.20</ip> < prefix- length>24</prefix- length> </address> </ipv4> </subinterface> </subinterfaces> </interface> </interfaces> <routing- policy xmlns="http://openconfig.net/ yang/routing- policy"> < policy- definitions> < policy- definition> < name> bgp- in</name> < statements> < statement> < name> bgp- in</name> < actions> < accept- route/> </actions> </statement> </statements> </policy- definition> < policy- definition> < name> bgp- out</name> < statements> < statement> < name> bgp- out</name> < actions> < accept- route/> </actions> </statement> </statements> </policy- definition> </policy- definitions> </routing- policy> < bgp xmlns="http://openconfig.net/ yang/ bgp"> <global> < as>65102</as> < router- id>10.10.0.20</router- id> < afi- safis> < afi- safi> < afi- safi- name xmlns:idx="http://openconfig.net/ yang/ bgp- types">idx:ipv4- unicast</afi- safi- name> </afi- safi> </afi- safis> </global> < neighbors> < neighbor> < neighbor- address>10.10.0.10</neighbor- address> <peer- group>group65101</peer- group> < neighbor- address>10.10.0.10</neighbor- address> < afi- safis> < afi- safi> < afi- safi- name xmlns:idx="http://openconfig.net/ yang/ bgp- types">idx:ipv4- unicast</afi- safi- name> < apply- policy> <import- policy> bgp- in</import- policy> <export- policy> bgp- out</export- policy> </apply- policy> </afi- safi> </afi- safis> </neighbor> < neighbor> < neighbor- address>11.11.0.10</neighbor- address> <peer- group>group65103</peer- group> < neighbor- address>11.11.0.10</neighbor- address> < afi- safis> < afi- safi> < afi- safi- name xmlns:idx="http://openconfig.net/ yang/ bgp- types">idx:ipv4- unicast</afi- safi- name> < apply- policy> <import- policy> bgp- in</import- policy> <export- policy> bgp- out</export- policy> </apply- policy> </afi- safi> </afi- safis> </neighbor> </neighbors> <peer- groups> <peer- group> <peer- group- name>group65101</peer- group- name> <peer- as>65101</peer- as> </peer- group> <peer- group> <peer- group- name>group65103</peer- group- name> <peer- as>65103</peer- as> </peer- group> </peer- groups> </bgp> 12

検証していて かったこと vmx と XRv の実装バージョンの違い vmx の openconfig-if-ip はバージョン 1.0.1( 図左 ) で実装されているが XRv は 0.2.0( 図右 ) で実装されている 機器によって使 可能なインターフェースが異なる vmx XRv は netconf に対応 veos は netconf に未対応 veos は grpc に対応 vmx XRv は対応しているらしいがドキュメントが不 していてまともに使えない 機器によって OpenConfig での設定が通常の設定と別に管理される 次ページ参照 13

Junos の OpenConfig の設定の仕 interfaces { ge-0/0/1 { vlan-tagging; unit 101 { vlan-id 101; family inet { address 192.168.101.1/24; fxp0 { unit 0 { family inet { address 172.26.211.26/16; openconfig-interfaces:interfaces { interface ge-0/0/1 { subinterfaces { subinterface 200 { config { index 200; enabled true; openconfig-if-ip:ipv4 { addresses { address 192.168.200.1 { config { ip 192.168.200.1; prefix-length 24; openconfig-vlan:vlan { config { vlan-id 200; Junos の 般的な操作 (CLI Juniper 名前空間での netconf) で設定したものはここに反映 OpenConfig 名前空間での netconf 操作で設定したものはここに反映 (CLI での設定は可能 ) 14

OpenConfig 注意点 懸念点 すべてのモデルが存在するわけではない モデルがあっても機器側で実装がない場合がある VRF 設定 に openconfig-network-instance が定義されているが実機側で実装がない モデルがあってもスキーマに不 がある インターフェースのスキーマに DHCP 設定がない バージョンによってスキーマが異なる場合がある openconfig-if-ip OSS だがオープンコミュニティではない 15

OpenConfig への期待 あらゆるベンダ機器間のギャップの抽象化 すべての機器をベンダロックインのない抽象化された API で制御 データセンター 16