FutureNet

NXR,WXRシリーズ

REST-API編

8. 各種サービス設定

8-1. IPv4DHCPサーバ設定(dhcp-server)

 処理概要

IPv4DHCPサーバ設定に関する処理を実行します。

 

URIおよびメソッド

機能 Version URI メソッド
POST PUT GET DELETE
DHCP
Server
v1 /api/v1/dhcp-server
/api/v1/dhcp-server/network
/api/v1/dhcp-server/network/{NUM}
/api/v1/dhcp-server/bind
/api/v1/dhcp-server/bind/{MAC}
v2 /api/v2/dhcp-server
/api/v2/dhcp-server/network
/api/v2/dhcp-server/network/{NUM}
/api/v2/dhcp-server/bind
/api/v2/dhcp-server/bind/{MAC}

凡例:〇対応、-未対応

 

実行例

DHCPサーバ設定の作成

メソッド URI
POST /api/{VERSION}/dhcp-server/network
JSON
リクエスト

POST /api/v1/dhcp-server/network
Content-Type: application/json

 

{
"network": {
"index": 1,
"prefix": "192.168.0.0/24",
"range": {
"min": "192.168.0.1",
"max": "192.168.0.100"
},
"gateway": "192.168.0.254",
"dns": {
"primary": "203.0.113.1",
"secondary": "203.0.113.2"
}
}
}

 

レスポンス

201 Created

 

XML
リクエスト

POST /api/v1/dhcp-server/network
Content-Type: application/xml

 

<dhcp-server>
<network>
<index>1</index>
<prefix>192.168.0.0/24</prefix>
<range>
<min>192.168.0.1</min>
<max>192.168.0.100</max>
</range>
<gateway>192.168.0.254</gateway>
<dns>
<primary>203.0.113.1</primary>
<secondary>203.0.113.2</secondary>
</dns>
</network>
</dhcp-server>

 

レスポンス

201 Created

 

全DHCPサーバ設定の取得

メソッド URI
GET /api/{VERSION}/dhcp-server/network
  • api/v1は、text/plainに対応していません。

 

JSON
リクエスト

GET /api/v1/dhcp-server/network
Accept: application/json

 

レスポンス

200 OK
Content-Type: application/json

 

{
"network": [
{
"index": 1,
"prefix": "192.168.0.0/24",
"range": {
"min": "192.168.0.1",
"max": "192.168.0.100"
},
"gateway": "192.168.0.254",
"dns": {
"primary": "203.0.113.1",
"secondary": "203.0.113.2"
}
},
{
"index": 2,
・・・・・

 

XML
リクエスト

GET /api/v1/dhcp-server/network
Accept: application/xml

 

レスポンス

200 OK
Content-Type: application/xml

 

<dhcp-server>
<network>
<index>1</index>
<prefix>192.168.0.0/24</prefix>
<range>
<min>192.168.0.1</min>
<max>192.168.0.100</max>
</range>
<gateway>192.168.0.254</gateway>
<dns>
<primary>203.0.113.1</primary>
<secondary>203.0.113.2</secondary>
</dns>
</network>
<network>
<index>2</index>
・・・・・

 

TEXT/PLAIN
リクエスト

GET /api/v2/dhcp-server/network
Accept: text/plain

 

レスポンス

200 OK
Content-Type: text/plain

 

dhcp-server 1
network 192.168.0.0/24 range 192.168.0.1 192.168.0.100
gateway 192.168.0.254
dns-server 203.0.113.1 203.0.113.2
exit
dhcp-server 2
・・・・・

 

DHCPサーバ設定の更新

メソッド URI
PUT /api/v2/dhcp-server/network/{NUM}
JSON
リクエスト

PUT /api/v2/dhcp-server/network/1
Content-Type: application/json

 

{
"index": 1,
"prefix": "192.168.0.0/24",
"range": {
"min": "192.168.0.1",
"max": "192.168.0.100"
},
"gateway": "192.168.0.254",
"dns": {
"primary": "203.0.113.1",
"secondary": "203.0.113.2"
},
"wins": {
"primary": "203.0.113.3",
"secondary": "203.0.113.4"
}
}

 

レスポンス

204 No content

 

XML
リクエスト

PUT /api/v2/dhcp-server/network/1
Content-Type: application/xml

 

<network>
<index>1</index>
<prefix>192.168.0.0/24</prefix>
<range>
<min>192.168.0.1</min>
<max>192.168.0.100</max>
</range>
<gateway>192.168.0.254</gateway>
<dns>
<primary>203.0.113.1</primary>
<secondary>203.0.113.2</secondary>
</dns>
<wins>
<primary>203.0.113.3</primary>
<secondary>203.0.113.4</secondary>
</wins>
</network>

 

レスポンス

204 No content

 

DHCPサーバ設定の取得

メソッド URI
GET /api/{VERSION}/dhcp-server/network/{NUM}
  • api/v1は、text/plainに対応していません。

 

JSON
リクエスト

GET /api/v1/dhcp-server/network/1
Accept: application/json

 

レスポンス

200 OK
Content-Type: application/json

 

{
"index": 1,
"prefix": "192.168.0.0/24",
"range": {
"min": "192.168.0.1",
"max": "192.168.0.100"
},
"gateway": "192.168.0.254",
"dns": {
"primary": "203.0.113.1",
"secondary": "203.0.113.2"
},
"wins": {
"primary": "203.0.113.3",
"secondary": "203.0.113.4"
}
}

 

XML
リクエスト

GET /api/v1/dhcp-server/network/1
Accept: application/xml

 

レスポンス

200 OK
Content-Type: application/xml

 

<network>
<index>1</index>
<prefix>192.168.0.0/24</prefix>
<range>
<min>192.168.0.1</min>
<max>192.168.0.100</max>
</range>
<gateway>192.168.0.254</gateway>
<dns>
<primary>203.0.113.1</primary>
<secondary>203.0.113.2</secondary>
</dns>
<wins>
<primary>203.0.113.3</primary>
<secondary>203.0.113.4</secondary>
</wins>
</network>

 

TEXT/PLAIN
リクエスト

GET /api/v2/dhcp-server/network/1
Accept: text/plain

 

レスポンス

200 OK
Content-Type: text/plain

 

dhcp-server 1
network 192.168.0.0/24 range 192.168.0.1 192.168.0.100
gateway 192.168.0.254
dns-server 203.0.113.1 203.0.113.2
netbios-server 203.0.113.3 203.0.113.4
exit

 

DHCPサーバ設定の削除

メソッド URI
DELETE /api/{VERSION}/dhcp-server/network/{NUM}
リクエスト

DELETE /api/v1/dhcp-server/network/1

 

レスポンス

204 No content

 

固定IPアドレス割り当て設定の作成

メソッド URI
POST /api/{VERSION}/dhcp-server/bind
JSON
リクエスト

POST /api/v1/dhcp-server/bind
Content-Type: application/json

 

{
"bind": {
"address": "192.168.0.101",
"hw-address": "00:00:5E:00:53:01"
}
}

 

レスポンス

201 Created

 

XML
リクエスト

POST /api/v1/dhcp-server/bind
Content-Type: application/xml

 

<dhcp-server>
<bind>
<address>192.168.0.101</address>
<hw-address>00:00:5E:00:53:01</hw-address>
</bind>
</dhcp-server>

 

レスポンス

201 Created

 

全固定IPアドレス割り当て設定の取得

メソッド URI
GET /api/{VERSION}/dhcp-server/bind
  • api/v1は、text/plainに対応していません。

 

JSON
リクエスト

GET /api/v1/dhcp-server/bind
Accept: application/json

 

レスポンス

200 OK
Content-Type: application/json

 

{
"bind": [
{
"address": "192.168.0.101",
"hw-address": "00:00:5E:00:53:01"
},
{
"address": "192.168.0.102",
"hw-address": "00:00:5E:00:53:02"
}
]
}

 

XML
リクエスト

GET /api/v1/dhcp-server/bind
Accept: application/xml

 

レスポンス

200 OK
Content-Type: application/xml

 

<dhcp-server>
<bind>
<address>192.168.0.200</address>
<hw-address>00:00:5E:00:53:01</hw-address>
</bind>
<bind>
<address>192.168.0.102</address>
<hw-address>00:00:5E:00:53:02</hw-address>
</bind>
</dhcp-server>

 

TEXT/PLAIN
リクエスト

GET /api/v2/dhcp-server/bind
Accept: text/plain

 

レスポンス

200 OK
Content-Type: text/plain

 

dhcp-server bind 00:00:5E:00:53:01 192.168.0.101
dhcp-server bind 00:00:5E:00:53:02 192.168.0.102

 

固定IPアドレス割り当て設定の更新

メソッド URI
PUT /api/{VERSION}/dhcp-server/bind/{MAC}
JSON
リクエスト

PUT /api/v1/dhcp-server/bind/00:00:5E:00:53:01
Content-Type: application/json

 

{
"bind": {
"address": "192.168.0.201",
"hw-address": "00:00:5E:00:53:01"
}
}

 

レスポンス

204 No content

 

XML
リクエスト

PUT /api/v1/dhcp-server/bind/00:00:5E:00:53:01
Content-Type: application/xml

 

<bind>
<address>192.168.0.201</address>
<hw-address>00:00:5E:00:53:01</hw-address>
</bind>

 

レスポンス

204 No content

 

固定IPアドレス割り当て設定の取得

メソッド URI
GET /api/{VERSION}/dhcp-server/bind/{MAC}
  • api/v1は、text/plainに対応していません。

 

JSON
リクエスト

GET /api/v1/dhcp-server/bind/00:00:5E:00:53:01
Accept: application/json

 

レスポンス

200 OK
Content-Type: application/json

 

{
"bind": {
"address": "192.168.0.201",
"hw-address": "00:00:5E:00:53:01"
}
}

 

XML
リクエスト

GET /api/v1/dhcp-server/bind/00:00:5E:00:53:01
Accept: application/xml

 

レスポンス

200 OK
Content-Type: application/xml

 

<bind>
<address>192.168.0.201</address>
<hw-address>00:00:5E:00:53:01</hw-address>
</bind>

 

TEXT/PLAIN
リクエスト

GET /api/v2/dhcp-server/bind/00:00:5E:00:53:01
Accept: text/plain

 

レスポンス

200 OK
Content-Type: text/plain

 

dhcp-server bind 00:00:5E:00:53:01 192.168.0.201

 

固定IPアドレス割り当て設定の削除

メソッド URI
DELETE /api/{VERSION}/dhcp-server/bind/{MAC}
リクエスト

DELETE /api/v1/dhcp-server/bind/00:00:5E:00:53:01

 

レスポンス

204 No content