FutureNet

NXR,VXRシリーズ

REST-API編

4. ルーティング設定

4-10. ルートマップ設定(route-map)

 処理概要

ルートマップ設定に関する処理を実行します。

 

URIおよびメソッド

機能 Version URI メソッド
POST PUT GET DELETE
Route-map v2 /api/v2/route-map
/api/v2/route-map/routemap-list
/api/v2/route-map/routemap-list/{NAME}

凡例:

● : 読み取り専用ユーザも含めアクセス可

〇 : 読み取り専用ユーザはアクセス不可

- : 未対応

 

実行例

ルートマップ名の定義および設定の作成

メソッド URI
POST /api/v2/route-map/routemap-list
JSON
リクエスト

POST /api/v2/route-map/routemap-list
Content-Type: application/json

 

{
"routemap-list": {
"name": "pbr",
"rule": {
"sequence": 1,
"permission": "permit",
"match": {
"match-list": {
"protocol": "ip",
"type": "address",
"value": "wan1_pbr_out"
}
},
"set": {
"protocol": "ip",
"type": "next-hop",
"value": "192.168.10.1"
}
}
}
}

 

レスポンス

201 Created

 

XML
リクエスト

POST /api/v2/route-map/routemap-list
Content-Type: application/xml

 

<route-map>
<routemap-list>
<name>pbr</name>
<rule>
<sequence>1</sequence>
<permission>permit</permission>
<match>
<match-list>
<protocol>ip</protocol>
<type>address</type>
<value>wan1_pbr_out</value>
</match-list>
</match>
<set>
<protocol>ip</protocol>
<type>next-hop</type>
<value>192.168.10.1</value>
</set>
</rule>
</routemap-list>
</route-map>

 

レスポンス

201 Created

 

ルートマップ設定の追加

メソッド URI
PUT /api/v2/route-map/routemap-list/{NAME}
  • PUT時は、既存のルートマップ名へのルールの追加のみ可能です。

 

JSON
リクエスト

PUT /api/v2/route-map/routemap-list/pbr
Content-Type: application/json

 

{
"name": "pbr",
"rule": {
"sequence": 2,
"permission": "permit",
"match": {
"match-list": {
"protocol": "ip",
"type": "address",
"value": "wan2_pbr_out"
}
},
"set": {
"protocol": "ip",
"type": "next-hop",
"value": "192.168.10.2"
}
}
}

 

レスポンス

204 No content

 

XML
リクエスト

PUT /api/v2/route-map/routemap-list/pbr
Content-Type: application/xml

 

<routemap-list>
<name>pbr</name>
<rule>
<sequence>2</sequence>
<permission>permit</permission>
<match>
<match-list>
<protocol>ip</protocol>
<type>address</type>
<value>wan2_pbr_out</value>
</match-list>
</match>
<set>
<protocol>ip</protocol>
<type>next-hop</type>
<value>192.168.10.2</value>
</set>
</rule>
</routemap-list>

 

レスポンス

204 No content

 

ルートマップ設定の取得

メソッド URI
GET /api/v2/route-map/routemap-list/{NAME}
JSON
リクエスト

GET /api/v2/route-map/routemap-list/pbr
Accept: application/json

 

レスポンス

200 OK
Content-Type: application/json

 

{
"name": "pbr",
"rule": [
{
"sequence": 1,
"permission": "permit",
"match": {
"match-list": {
"protocol": "ip",
"type": "address",
"value": "wan1_pbr_out"
}
},
"set": {
"protocol": "ip",
"type": "next-hop",
"value": "192.168.10.1"
}
},
{
"sequence": 2,
"permission": "permit",
"match": {
"match-list": {
"protocol": "ip",
"type": "address",
"value": "wan2_pbr_out"
}
},
"set": {
"protocol": "ip",
"type": "next-hop",
"value": "192.168.10.2"
}
}
]
}

 

XML
リクエスト

GET /api/v2/route-map/routemap-list/pbr
Accept: application/xml

 

レスポンス

200 OK
Content-Type: application/xml

 

<routemap-list>
<name>pbr</name>
<rule>
<sequence>1</sequence>
<permission>permit</permission>
<match>
<match-list>
<protocol>ip</protocol>
<type>address</type>
<value>wan1_pbr_out</value>
</match-list>
</match>
<set>
<protocol>ip</protocol>
<type>next-hop</type>
<value>192.168.10.1</value>
</set>
</rule>
<rule>
<sequence>2</sequence>
<permission>permit</permission>
<match>
<match-list>
<protocol>ip</protocol>
<type>address</type>
<value>wan2_pbr_out</value>
</match-list>
</match>
<set>
<protocol>ip</protocol>
<type>next-hop</type>
<value>192.168.10.2</value>
</set>
</rule>
</routemap-list>

 

TEXT/PLAIN
リクエスト

GET /api/v2/route-map/routemap-list/pbr
Accept: text/plain

 

レスポンス

200 OK
Content-Type: text/plain

 

route-map pbr permit 1
match ip address wan1_pbr_out
set ip next-hop 192.168.10.1
route-map pbr permit 2
match ip address wan2_pbr_out
set ip next-hop 192.168.10.2

 

ルートマップ設定の削除

メソッド URI
DELETE /api/v2/route-map/routemap-list/{NAME}
  • Bodyを指定しなかった場合、指定したNAMEのルートマップ設定を全て削除します。

 

JSON
リクエスト

DELETE /api/v2/route-map/routemap-list/pbr
Content-Type: application/json

 

{
"name": "pbr",
"rule": {
"sequence": 1,
"permission": "permit",
"match": {
"match-list": {
"protocol": "ip",
"type": "address",
"value": "wan1_pbr_out"
}
},
"set": {
"protocol": "ip",
"type": "next-hop",
"value": "192.168.10.1"
}
}
}

 

レスポンス

204 No content

 

XML
リクエスト

DELETE /api/v2/route-map/routemap-list/pbr
Content-Type: application/xml

 

<routemap-list>
<name>pbr</name>
<rule>
<sequence>1</sequence>
<permission>permit</permission>
<match>
<match-list>
<protocol>ip</protocol>
<type>address</type>
<value>wan1_pbr_out</value>
</match-list>
</match>
<set>
<protocol>ip</protocol>
<type>next-hop</type>
<value>192.168.10.1</value>
</set>
</rule>
</routemap-list>

 

レスポンス

204 No content

 

パラメータ

指定可能なパラメータは下記の通りです。

なお、指定可能なパラメータは製品およびファームウェアのバージョンにより異なりますので、各パラメータの詳細については各製品のユーザーズガイド(CLI版)も合わせてご参照ください。

  • パラメータ表の説明文中の表記について
    < > … 括弧内の値の範囲から選択することを示しています。
    [ ] … 括弧内の値のどれかを選択することを示しています。
    数字,文字列 … 初期値
  • パラメータ表の説明文中のデータタイプについて
    A.B.C.D … IPv4アドレス
    A.B.C.D/M … IPv4プレフィックスおよびマスク長
    X:X::X:X … IPv6アドレス

 

パラメータおよびレベル 説明
Lv.1 Lv.2 Lv.3 Lv.4 Lv.5 Lv.6
route-map routemap-list name ルートマップ名
rule    sequence シーケンス番号
permission パーミッション … [ permit | deny ]
match match-list protocol プロトコル … [ ip | ipv6 ]
type タイプ … [ address | as-path | local-policy | mark | metric |
next-hop | precedence | origin | tag | tos ]
value 値 …

  • address … IP Route ACL名またはClassACL名
  • as-path … AS PATH ACL名
  • local-policy … IP Policy-rule名
  • mark … <1-4095>
  • metric … <0-4294967295>
  • next-hop … [ IP Route ACL名 | X:X::X:X ]
    ※プロトコルip選択時はIP Route ACL名、ipv6選択時はX:X::X:Xを指定
  • precedence … <0-7>
  • origin … [ egp | igp | incomplete ]
  • tag … <0-4294967295>
  • tos … <0-255>
set protocol プロトコル … [ ip | ipv6 ]
type タイプ … [ aggregator as | as-path prepend | atomic-aggregate | dscp | interface | local-preference | mark | metric | next-hop | origin | tag | tos | ttl ]
value 値 …

  • aggregator as … [ <1-65535> | A.B.C.D ]
    ※Aggregator ASのAS番号とAggregatorのIPアドレスをそれぞれ指定
  • as-path prepend … <1-65535>
    ※複数のAS番号を指定する場合、AS番号を半角スペースで区切る。(ex. 1 2 3)
  • dscp … <0-63>
  • interface … インタフェース名
  • local-preference … <0-4294967295>
  • mark … <1-4095>
  • metric … <0-4294967295>
  • next-hop … [ A.B.C.D | X:X::X:X | local ]
    ※プロトコルip選択時はA.B.C.D、ipv6選択時はX:X::X:XまたはlocalとX:X::X:Xを指定
  • origin … [ egp | igp | incomplete ]
  • tag … <0-4294967295>
  • tos … <0-255>
  • ttl … [ <1-255> | decr | incr ]
    ※decr,incr選択時はTTL値<1-255>も併せて指定
netevent track-id トラックID
action ネットイベントアクション … [ active | inactive ]