
# 查询端口列表（废弃）
#### 功能介绍
查询端口列表
#### URI
GET /v1/ports
样例：
```
GET https://{Endpoint}/v1/ports?id={port_id}&name={port_name}&admin_state_up={is_admin_status_up}&network_id={network_id}&mac_address={port_mac}&device_id={port_device_id}&device_owner={device_owner}&status={port_status}&fixed_ips=ip_address={ip_address}&fixed_ips=subnet_id={subnet_id}
```
参数说明请参见[表1]。
 表1参数说明 
| 名称             | 是否必选 | 参数类型    | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| id             | 否    | String  | 按照port_id过滤查询                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| name           | 否    | String  | - 功能说明：按照name过滤查询  - 取值范围：最大长度不超过255                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| admin_state_up | 否    | Boolean | 按照admin_state_up进行过滤                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| network_id     | 否    | String  | 按照network_id过滤查询                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| mac_address    | 否    | String  | 按照mac_address过滤查询                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| device_id      | 否    | String  | 按照device_id过滤查询                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| device_owner   | 否    | String  | 按照device_owner过滤查询                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| status         | 否    | String  | - 功能说明：按照status过滤查询  - 取值范围：ACTIVE、BUILD、DOWN                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| marker         | 否    | String  | 分页查询的起始资源ID，表示从指定资源的下一条记录开始查询。 marker需要和limit配合使用： - 若不传入marker和limit参数，查询结果返回第一页全部资源记录。  - 若不传入marker参数，limit为10，查询结果返回第1\~10条资源记录。  - 若marker为第10条记录的资源ID，limit为10，查询结果返回第11\~20条资源记录。  - 若marker为第10条记录的资源ID，不传入limit参数，查询结果返回第11\~2000条（limit默认值2000）资源记录。   |
| limit          | 否    | Integer | 分页查询每页返回的记录个数，取值范围为0\~2000，默认值2000。 limit需要和marker配合使用，详细规则请见marker的参数说明。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| fixed_ips      | 否    | String  | 按照fixed_ips=ip_address或者fixed_ips=subnet_id过滤查询                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
   
#### 请求消息
- 请求参数
  ```
  无
  ```
  
- 请求样例
  ```
  GET https://{Endpoint}/v1/ports
  ```
  
 
#### 响应消息
- 响应参数
  表2响应参数 
  | 名称    | 参数类型                                                           | 说明                                                     |
  |:---|:---|:---|
  | ports | Array of [port] objects | 端口列表对象，请参见[表3]。 |
     
   表3port字段说明 
  | 名称                    | 参数类型                                                                                                      | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
  |:---|:---|:---|
  | id                    | String                                                                                                    | 端口唯一标识                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
  | name                  | String                                                                                                    | - 功能说明：端口名称  - 取值：默认为空，最大长度不超过255                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
  | network_id            | String                                                                                                    | - 功能说明：端口所属网络的ID  - 约束：必须是存在的网络ID                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
  | admin_state_up        | Boolean                                                                                                   | - 功能说明：管理状态  - 约束：只支持true，默认为true                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
  | mac_address           | String                                                                                                    | - 功能说明：端口MAC地址  - 约束：由系统分配，不支持指定                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
  | fixed_ips             | Array of [fixed_ip] objects     | - 功能说明：端口IP。例如："fixed_ips": \[{"subnet_id": "4dc70db6-cb7f-4200-9790-a6a910776bba", "ip_address": "192.169.25.79"}\]，请参见[表4]  - 约束：一个端口只支持一个fixed_ip，且不支持更新。                                                                                                                                                                                                                                                                                                                                                                                                                                       |
  | device_id             | String                                                                                                    | - 功能说明：端口所属设备ID  - 约束：不支持设置和更新，由系统自动维护                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
  | device_owner          | String                                                                                                    | - 功能说明：设备所属（DHCP/Router/ lb/Nova）  - 约束：不支持设置和更新，由系统自动维护                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
  | tenant_id             | String                                                                                                    | 项目ID。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
  | status                | String                                                                                                    | - 功能说明：端口状态，Hana硬直通虚拟机端口状态总为DOWN  - 取值范围：ACTIVE、BUILD、DOWN                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
  | security_groups       | Array of strings                                                                                          | 安全组的UUID(扩展属性)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
  | allowed_address_pairs | Array of [allow_address_pair] objects                               | - 功能说明：IP/Mac对列表，allow_address_pair参见[表5]（扩展属性）  - 约束：IP地址不允许为 "0.0.0.0"  - 如果allowed_address_pairs配置地址池较大的CIDR（掩码小于24位），建议为该port配置一个单独的安全组  - 如果allowed_address_pairs为"1.1.1.1/0"，表示关闭源目的地址检查开关                                                                                                                                                                                                                                                 |
  | extra_dhcp_opts       | Array of [extra_dhcp_opt] objects | DHCP的扩展Option(扩展属性)，请参见[表6]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
  | binding:vif_details   | Object                                                                                                    | vif的详细信息， "ovs_hybrid_plug": 是否为ovs/bridge混合模式                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
  | binding:profile       | Object                                                                                                    | 扩展属性：提供用户设置自定义信息 【使用说明】 - internal_elb字段，布尔类型，普通租户可见。只有在创建内网ELB的虚拟IP的网卡时设置为true。普通租户没有权限更改该字段，由系统维护。 举例： {"internal_elb": true}   - disable_security_groups字段，布尔类型，普通租户可见。默认为false高性能通信场景下，允许指定为true普通租户可见。仅支持创建port和读取时指定。当前仅支持指定为true，不支持指定为false 举例： {"disable_security_groups"：true }， 当前仅支持指定为true，不支持指定为false，指定为true时，FWaaS功能不生效。    |
  | binding:vnic_type     | String                                                                                                    | - 功能说明：绑定的vNIC类型  - 取值范围：normal或者direct。normal: 软交换，direct: SRIOV硬直通（不支持）                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
  | port_security_enabled | Boolean                                                                                                   | 端口安全使能标记，如果不使能则安全组和dhcp防欺骗不生效，默认为true                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
  | dns_assignment        | Array of [dns_assignment] objects                                   | 扩展属性：主网卡默认内网域名信息 【使用说明】不支持设置和更新，由系统自动维护 - hostname：与端口dns_name一致  - ip_address：端口ipv4私有地址  - fqdn：为端口创建默认内网fqdn                                                                                                                                                                                                                                                                                                                                                                          |
  | dns_name              | String                                                                                                    | 扩展属性：主网卡默认内网DNS名称 【使用说明】不支持设置和更新，由系统自动维护，访问该默认内网域名前，请确保子网使用当前系统提供的DNS                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
     
   表4fixed_ip对象 
  | 名称         | 参数类型   | 说明                                                                                                                                                                                                                                                                                         |
  |:---|:---|:---|
  | subnet_id  | String | - 功能说明：所属子网ID  - 约束：不支持更新   |
  | ip_address | String | 端口IP地址                                                                                                                                                                                                                                                                                     |
     
   表5allow_address_pair对象 
  | 名称          | 参数类型   | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
  |:---|:---|:---|
  | ip_address  | String | - 功能说明：IP地址  - 约束：不支持0.0.0.0  - 如果allowed_address_pairs配置地址池较大的CIDR（掩码小于24位），建议为该port配置一个单独的安全组。   |
  | mac_address | String | MAC地址                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
     
   表6extra_dhcp_opt对象 
  | 名称        | 参数类型   | 说明       |
  |:---|:---|:---|
  | opt_name  | String | Option名称 |
  | opt_value | String | Option值  |
     
   表7dns_assignment对象 
  | 名称         | 参数类型   | 说明          |
  |:---|:---|:---|
  | hostname   | String | 端口hostname。 |
  | ip_address | String | 端口IP地址。     |
  | fqdn       | String | 端口内网fqdn。   |
     
  
- 响应样例
  ```
  {
      "ports": [
          {
              "id": "d00f9c13-412f-4855-8af3-de5d8c24cd60",
              "name": "test",
              "status": "DOWN",
              "admin_state_up": "true",
              "fixed_ips": [
                  {
                      "subnet_id": "70f2e74b-e660-410a-b754-0ca46744348a",
                      "ip_address": "10.128.1.10"
                  }
              ],
              "dns_assignment": [
                  {
                      "hostname": "ip-10-128-1-10",
                      "ip_address": "10-128-1-10",
                      "fqdn": "ip-10-128-1-10.xxx.compute.internal."
                  }
              ],
              "dns_name": "ip-10-128-1-10",
              "mac_address": "fa:16:3e:d7:f2:6c",
              "network_id": "5b808927-13c9-4e60-a4f4-ed6ffe225167",
              "tenant_id": "43f2d1cca56a40729dcb17212482f34d",
              "device_id": "",
              "device_owner": "",
              "security_groups": [
                  "02b4e8ee-74fa-4a31-802e-5490df11245e"
              ],
              "extra_dhcp_opts": [],
              "allowed_address_pairs": [],
              "binding:vnic_type": "normal",
              "binding:vif_details": {},
              "binding:profile": {},
              "port_security_enabled":true
          },
          {
              "id": "28ba8f45-7636-45e4-8c0a-675d7663717c",
              "name": "test1",
              "status": "DOWN",
              "admin_state_up": "true",
              "fixed_ips": [
                  {
                      "subnet_id": "061d3ca2-bd1f-4bd1-a01d-7a5155328c0e",
                      "ip_address": "192.168.10.10"
                  }
              ],
              "dns_assignment": [
                  {
                      "hostname": "ip-192-168-10-10",
                      "ip_address": "192-168-10-10",
                      "fqdn": "ip-192-168-10-10.xxx.compute.internal."
                  }
              ],
              "dns_name": "ip-192-168-10-10",
              "mac_address": "fa:16:3e:3d:91:cd",
              "network_id": "be2fe79a-3ee2-4d87-bd71-5afa78a5670d",
              "tenant_id": "43f2d1cca56a40729dcb17212482f34d",
              "device_id": "",
              "device_owner": "",
              "security_groups": [
                  "0bfc8687-ca18-4c37-ac84-d2198baba585"
              ],
              "extra_dhcp_opts": [],
              "allowed_address_pairs": [],
              "binding:vnic_type": "normal",
              "binding:vif_details": {},
              "binding:profile": {},
              "port_security_enabled":true
          }
      ]
  }
  ```
  
 
#### 状态码
请参见[状态码](https://support.huaweicloud.com/api-vpc/vpc_api_0002.html)。
#### 错误码
请参考[错误码](https://support.huaweicloud.com/api-vpc/vpc_api_0003.html)。
