Openstack Neutron:在响应中未从Open Stack Neutron API获取端口信息

时间:2018-08-12 18:55:14

标签: networking cloud openstack openstack-neutron

我发出了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

1 个答案:

答案 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