FutureNet

NXR,WXRシリーズ

REST-API編

5. フィルタ設定

5-2. IPv6アクセスリスト設定(acl_v6)

 処理概要

IPv6アクセスリスト設定に関する処理を実行します。

 

URIおよびメソッド

機能 Version URI メソッド
POST PUT GET DELETE
IPv6 ACL v2 /api/v2/acl_v6
/api/v2/acl_v6/verdict
/api/v2/acl_v6/access-list
/api/v2/acl_v6/access-list/{NAME}

凡例:〇対応、-未対応

  • api/v1は対応していません。

 

実行例

verdict設定の更新

メソッド URI
PUT /api/v2/acl_v6/verdict
JSON
リクエスト

PUT /api/v2/acl_v6/verdict
Content-Type: application/json

 

{
"verdict": "separate"
}

 

レスポンス

204 No content

 

XML
リクエスト

PUT /api/v2/acl_v6/verdict
Content-Type: application/xml

 

<acl_v6>
<verdict>separate</verdict>
</acl_v6>

 

レスポンス

204 No content

 

verdict設定の取得

メソッド URI
GET /api/v2/acl_v6/verdict
JSON
リクエスト

GET /api/v2/acl_v6/verdict
Accept: application/json

 

レスポンス

200 OK
Content-Type: application/json

 

{
"verdict": "separate"
}

 

XML
リクエスト

GET /api/v2/acl_v6/verdict
Accept: application/xml

 

レスポンス

200 OK
Content-Type: application/xml

 

<acl_v6>
<verdict>separate</verdict>
</acl_v6>

 

TEXT/PLAIN
リクエスト

GET /api/v2/acl_v6/verdict
Accept: text/plain

 

レスポンス

200 OK
Content-Type: text/plain

 

ipv6 access-list-verdict forward separate

 

verdict設定の削除

メソッド URI
DELETE /api/v2/acl_v6/verdict
リクエスト

DELETE /api/v2/acl_v6/verdict

 

レスポンス

204 No content

 

IPv6アクセスリスト名の定義および設定の作成

メソッド URI
POST /api/v2/acl_v6/access-list
JSON
リクエスト

POST /api/v2/acl_v6/access-list
Content-Type: application/json

 

{
"access-list": {
"name": "eth0_in",
"rule": {
"permission": "permit",
"destination": "2001:db8:1:100::/64",
"source": "2001:db8:1:200::/64"
}
}
}

 

レスポンス

201 Created

 

XML
リクエスト

POST /api/v2/acl_v6/access-list
Content-Type: application/xml

 

<acl_v6>
<access-list>
<name>eth0_in</name>
<rule>
<permission>permit</permission>
<destination>2001:db8:1:100::/64</destination>
<source>2001:db8:1:200::/64</source>
</rule>
</access-list>
</acl_v6>

 

レスポンス

201 Created

 

IPv6アクセスリスト設定の追加

メソッド URI
PUT /api/v2/acl_v6/access-list/{NAME}
  • PUT時は、既存のアクセスリスト名へのルールの追加のみ可能です。

 

JSON
リクエスト

PUT /api/v2/acl_v6/access-list/eth0_in
Content-Type: application/json

 

{
"name": "eth0_in",
"rule": {
"permission": "permit",
"destination": "2001:db8:1:100::/64",
"source": "2001:db8:1:300::/64",
"protocol": "tcp",
"dst_port": {
"min": 880
},
"src_port": {
"min": "any"
}
}
}

 

レスポンス

204 No content

 

XML
リクエスト

PUT /api/v2/acl_v6/access-list/eth0_in
Content-Type: application/xml

 

<access-list>
<name>eth0_in</name>
<rule>
<permission>permit</permission>
<destination>2001:db8:1:100::/64</destination>
<source>2001:db8:1:200::/64</source>
</rule>
<rule>
<permission>permit</permission>
<destination>2001:db8:1:100::/64</destination>
<source>2001:db8:1:300::/64</source>
<protocol>tcp</protocol>
<dst_port>
<min>880</min>
</dst_port>
<src_port>
<min>any</min>
</src_port>
</rule>
</access-list>

 

レスポンス

204 No content

 

IPv6アクセスリスト設定の取得

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

GET /api/v2/acl_v6/access-list/eth0_in
Accept: application/json

 

レスポンス

200 OK
Content-Type: application/json

 

{
"name": "eth0_in",
"rule": [
{
"permission": "permit",
"destination": "2001:db8:1:100::/64",
"source": "2001:db8:1:200::/64"
},
{
"permission": "permit",
"destination": "2001:db8:1:100::/64",
"source": "2001:db8:1:300::/64",
"protocol": "tcp",
"dst_port": {
"min": 880
},
"src_port": {
"min": "any"
}
}
]
}

 

XML
リクエスト

GET /api/v2/acl_v6/access-list/eth0_in
Accept: application/xml

 

レスポンス

200 OK
Content-Type: application/xml

 

<access-list>
<name>eth0_in</name>
<rule>
<permission>permit</permission>
<destination>2001:db8:1:100::/64</destination>
<source>2001:db8:1:200::/64</source>
</rule>
<rule>
<permission>permit</permission>
<destination>2001:db8:1:100::/64</destination>
<source>2001:db8:1:300::/64</source>
<protocol>tcp</protocol>
<dst_port>
<min>880</min>
</dst_port>
<src_port>
<min>any</min>
</src_port>
</rule>
</access-list>

 

TEXT/PLAIN
リクエスト

GET /api/v2/acl_v6/access-list/eth0_in
Accept: text/plain

 

レスポンス

200 OK
Content-Type: text/plain

 

ipv6 access-list eth0_in permit 2001:db8:1:200::/64 2001:db8:1:100::/64
ipv6 access-list eth0_in permit 2001:db8:1:300::/64 2001:db8:1:100::/64 tcp any 880

 

IPv6アクセスリスト設定の削除

メソッド URI
DELETE /api/v2/acl_v6/access-list/{NAME}
  • Bodyを指定しなかった場合、指定したNAMEのIPv6アクセスリスト設定を全て削除します。

 

JSON
リクエスト

DELETE /api/v2/acl_v4/access-list/eth0_in
Content-Type: application/json

 

{
"name": "eth0_in",
"rule": {
"permission": "permit",
"destination": "2001:db8:1:100::/64",
"source": "2001:db8:1:200::/64"
}
}

 

レスポンス

204 No content

 

XML
リクエスト

DELETE /api/v2/acl_v6/access-list/eth0_in
Content-Type: application/xml

 

<access-list>
<name>eth0_in</name>
<rule>
<permission>permit</permission>
<destination>2001:db8:1:100::/64</destination>
<source>2001:db8:1:200::/64</source>
</rule>
</access-list>

 

レスポンス

204 No content

 

パラメータ

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

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

  • パラメータ表の説明文中の記号について
    < > … 括弧内の値の範囲から選択することを示しています。
    [ ] … 括弧内の値のどれかを選択することを示しています。
  • パラメータ表の説明文中のデータタイプについて
    X:X::X:X … IPv6アドレス
    X:X::X:X/M … IPv6プレフィックスおよびプレフィックス長
    FQDN … FQDN名
    XX:XX:XX:XX:XX:XX … MACアドレス

 

パラメータおよびレベル 説明
Lv.1 Lv.2 Lv.3 Lv.4 Lv.5
acl_ipv6 verdict 転送フィルタの判定 … [combine | separate]
access-list name ACL名
rule permission 動作 … [permit | deny]
destination 宛先IPv6アドレス …

  • any
  • X:X::X:X
  • X:X::X:X/M
  • FQDN
dst_set 宛先ipset名
source 送信元IPv6アドレス …

  • any
  • X:X::X:X
  • X:X::X:X/M
  • FQDN
src_set 送信元ipset名
protocol プロトコル … [tcp | udp | icmpv6 | <0-255>]
icmpv6_type ICMPv6タイプ … <0-255>
icmpv6_code ICMPv6コード … <0-255>
dst_port min 宛先ポート番号 … [any | <1-65535>]
max 宛先ポート番号 … <1-65535>
※範囲指定時のみ有効
src_port min 送信元ポート番号 … [any | <1-65535>]
max 送信元ポート番号 … <1-65535>
※範囲指定時のみ有効
tcp_flag TCPフラグ … syn
src_mac 送信元MACアドレス … XX:XX:XX:XX:XX:XX
log フィルタログ … log
tag ログタグ名