API on Cisco: IOS-XE 使ってみる (NETCONF)

CiscoのAPI関連はDEVNET(https://developer.cisco.com/)に情報が集まっている。

 

このエントリーはNETCONFの概要と、ルータから情報を引きだせるところまで。

ビデオで概要を知る


参考モジュール: Network Device APIs

  1. Getting the “YANG” of it with Standard Data Models … YANGとは何者か。RPC, NETCONFとの関係
  2. Goodbye SNMP <hello> NETCONF! … NETCONFの仕様。PythonでNETCONFを使ってみる

 

ラボ環境を作る


DEVNETにログインすると、Always-On Sandbox(Cisco各種機能が試せるラボ)にアクセスできるはずだが、接続できなかったので、AWSでCSR1000Vを立ち上げてみる。小さいインスタンスであれば1時間10c以下なので、問題なし。

    1. CSR1000Vを立ち上げる
    2. sshでCSR1000Vにアクセス
    3. NETCONFでアクセスできる設定

 

NETCONFを使ってみる


参考モジュール:Introduction to Device Level Interfaces (ex: NETCONF/YANG)

YANGモデル(ietf-interfaces-model)の例を見てみる… このような形で、編集できる部分(設定)と読み込みのみの部分(状態やパケット統計)が別れている。

CSR1000Vに対して実行したところ。インタフェースの情報が取得できた。