我发出了POST API请求,以使用外部网络(路由器的SET网关)创建路由器。
端点:/ api / networks / routers /:routerId
有效载荷:
"router": {
"name: "myrout3r"
"external_gateway_info": {
"network_id": "659cf56-cad0-40a6-ae53-f24a2123508a",
"enable_snat": true
},
"admin_state_up": true
}
}
响应:
{
"router": {
"status": "ACTIVE",
"external_gateway_info": {
"network_id": "659c2f56-cad0-40a6-ae59-f24a2123508a",
"enable_snat": true,
"external_fixed_ips": [
{
"subnet_id": "52f0822b-2c36-4810-8653-a1a60b03a8b1",
"ip_address": "172.30.60.4"
}
]
},
"availability_zone_hints": [],
"availability_zones": [
"nova"
],
"description": "",
"tags": [],
"tenant_id": "5178acd154364430876d5aa687a9df7c",
"created_at": "2018-08-07T06:50:22Z",
"admin_state_up": true,
"distributed": false,
"updated_at": "2018-08-07T09:40:30Z",
"project_id": "5178acd154364430876d5aa687a9df7c",
"flavor_id": null,
"revision_number": 13,
"routes": [],
"ha": false,
"id": "398872f0-0cf6-4f48-8c94-f55623beace4",
"name": "router-szz"
}
}
我的主要问题是:在网络的“端口”选项卡中为外部网络添加路由器网关时,会动态创建一个新端口。但是这些信息不是我想要的响应的一部分。
2)是否应该为外部网络启用DHCP,否则为什么? router_external_gateway
答案 0 :(得分:2)
可以从“端口” API而非“路由器” API获取路由器的端口。
可以使用以下REST API查询与路由器关联的端口:
curl -s -H“ X-Auth-Token:$ OS_TOKEN” $ OS_NETWORK_API / v2.0 / ports?device_id = {router_id}
示例:
curl -s -H“ X-Auth-Token:$ OS_TOKEN” $ OS_NETWORK_API / v2.0 / ports?device_id = b3b11b62-04da-4a98-a981-adcd42d9fe3e