Consulta de puertos
Función
Consulta todas las redes accesibles para el tenant que envía la solicitud. Se puede devolver un máximo de 2000 registros para cada operación de consulta. Si el número de registros es superior a 2000, se devolverá el marcador de paginación. Para obtener más información, consulte la sección Paginación.
URI
GET /v2.0/ports
Por ejemplo:
GET https://{Endpoint}/v2.0/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}&tenant_id={tenant_id}&status={port_status}&fixed_ips=ip_address={ip_address}&fixed_ips=subnet_id={subnet_id}
Ejemplo de consulta de puertos por página
GET https://{Endpoint}/v2.0/ports?limit=2&marker=791870bd-36a7-4d9b-b015-a78e9b06af08&page_reverse=False
Tabla 1 describe los parámetros.
Nombre |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
id |
No |
String |
Especifica que el ID de puerto se utiliza como la condición de filtrado. |
name |
No |
String |
Especifica que el nombre del puerto se utiliza como la condición de filtrado. |
admin_state_up |
No |
Boolean |
Especifica que el estado de admin se utiliza como condición de filtrado. El valor puede ser true o false. |
network_id |
No |
String |
Especifica que el ID de red se utiliza como la condición de filtrado.
NOTA:
Para obtener el ID de red:
|
mac_address |
No |
String |
Especifica que la dirección de MAC se utiliza como condición de filtrado. |
device_id |
No |
String |
Especifica que el ID de dispositivo se utiliza como la condición de filtrado. |
device_owner |
No |
String |
Especifica que el propietario del dispositivo se utiliza como la condición de filtrado. |
status |
No |
String |
Especifica que el estado del puerto se utiliza como la condición de filtrado. El valor puede ser ACTIVE, BUILD o DOWN. |
security_groups |
No |
Array of strings |
Especifica que el ID del grupo de seguridad se utiliza como la condición de filtrado. |
fixed_ips |
No |
Array of strings |
Especifica que la dirección IP se utiliza como la condición de filtrado. El valor puede ser fixed_ips=ip_address o fixed_ips=subnet_id. |
tenant_id |
No |
String |
Especifica que el ID del proyecto se utiliza como la condición de filtrado. |
marker |
No |
String |
Especifica un ID de recurso para la consulta de paginación, que indica que la consulta comienza en el siguiente registro del ID de recurso especificado. Este parámetro puede funcionar junto con el parámetro limit.
|
limit |
No |
Integer |
Especifica el número de registros que se devolverán en cada página. El valor es de 0 a intmax (2^31-1). limit se puede utilizar junto con marker. Para obtener más información, consulte la descripción de parámetros de marker. |
Mensaje de solicitud
No hay
Ejemplo de la solicitud
[Ejemplo 1]
GET https://{Endpoint}/v2.0/ports?limit=1
[Ejemplo 2]
GET https://{Endpoint}/v2.0/ports?mac_address=fa:16:3e:f1:0b:09
[Ejemplo 3]
GET https://{Endpoint}/v2.0/ports?admin_state_up=False
[Ejemplo 4]
GET https://{Endpoint}/v2.0/ports?device_id=e6c05704-c907-4cc1-8106-69b0996c43b9
[Ejemplo 5]
GET https://{Endpoint}/v2.0/ports?tenant_id=6c9298ec8c874f7f99688489ab65f90e&name=port_vm_50_3
[Ejemplo 6]
GET https://{Endpoint}/v2.0/ports?name=port_vm_50_3
Parámetro de respuesta
Parámetro |
Tipo |
Descripción |
---|---|---|
ports |
Array of port objects |
Especifica la lista de objetos de puerto. Para obtener más información, véase Tabla 3. |
ports_links |
Array of ports_link objects |
Especifica la información de paginación. Para obtener más información, véase Tabla 9. Solo cuando se utiliza limit para filtrar y el número de recursos excede el valor de limit o 2000 (valor predeterminado de limit), se devolverá el valor next para rel y un enlace para href. |
Atributo |
Tipo |
Descripción |
---|---|---|
id |
String |
Especifica el ID de puerto. Se permite un máximo de 255 caracteres. Este parámetro no es obligatorio cuando consulta los puertos. |
name |
String |
Especifica el nombre del puerto. |
network_id |
String |
Especifica el ID de la red a la que pertenece el puerto. |
admin_state_up |
Boolean |
Especifica el estado administrativo. El valor solo puede ser true. |
mac_address |
String |
Especifica la dirección MAC del puerto. Por ejemplo, "mac_address": "fa:16:3e:9e:ff:55". Este valor solo puede ser asignado dinámicamente por el sistema. |
fixed_ips |
Array of fixed_ip objects |
Especifica la dirección IP del puerto. Para obtener más información, véase Tabla 4. Por ejemplo, el valor es "fixed_ips": [{"subnet_id": "4dc70db6-cb7f-4200-9790-a6a910776bba", "ip_address": "192.169.25.79"}]. |
device_id |
String |
Especifica el ID del dispositivo. Este valor se mantiene automáticamente por el sistema y no se puede establecer ni actualizar manualmente. No se puede eliminar el puerto con este campo especificado. |
device_owner |
String |
Especifica el DHCP, el enrutador o Nova al que pertenece un dispositivo. El valor puede ser network:dhcp, network:router_interface_distributed, compute:xxx o neutron:VIP_PORT. (En el valor compute:xxx, xxx especifica el nombre de la AZ, por ejemplo, compute:aa-bb-cc indica que la dirección IP privada es utilizada por un ECS en la AZ aa-bb-cc). Este valor de parámetro no se puede actualizar. Solo puede establecer device_owner en neutron:VIP_PORT para un puerto de dirección IP virtual durante la creación del puerto. Si este parámetro de un puerto no se deja en blanco, el puerto solo se puede eliminar cuando este valor de parámetro es de neutron:VIP_PORT. No se puede eliminar el puerto con este campo especificado. |
tenant_id |
String |
Especifica el ID del proyecto. |
status |
String |
Especifica el estado del puerto. El valor puede ser ACTIVE, BUILD o DOWN. |
security_groups |
Array of strings |
Especifica el UUID del grupo de seguridad, por ejemplo, "security_groups": ["a0608cbf-d047-4f54-8b28-cd7b59853fff"]. Este es un atributo extendido. Este parámetro es obligatorio. |
allowed_address_pairs |
Array of allow_address_pair objects |
Especifica la dirección IP y el par de direcciones MAC. Este es un atributo extendido. Para obtener más información, véase Tabla 5. Instrucciones:
|
extra_dhcp_opts |
Array of extra_dhcp_opt objects |
Especifica la opción DHCP extendida. Este es un atributo extendido. Para obtener más información, véase Tabla 6. |
binding:vif_details |
binding:vif_details object |
Para obtener más información, véase Tabla 7. |
binding:profile |
Object |
Especifica la configuración definida por el usuario. Este es un atributo extendido. Instrucciones:
|
binding:vnic_type |
String |
Especifica el tipo de vNIC enlazado. normal: Softswitch |
port_security_enabled |
Boolean |
Especifica si la opción de seguridad está habilitada para el puerto. Si la opción no está habilitada, el grupo de seguridad y la indagación DHCP no tienen efecto. |
dns_assignment |
Array of dns_assignment objects |
Especifica la información de nombre de dominio de red privada predeterminada de la NIC principal. Este es un atributo extendido. El sistema establece automáticamente este parámetro y no se le permite configurar ni cambiar el valor del parámetro.
|
dns_name |
String |
Especifica el nombre DNS de la red privada predeterminada de la NIC principal. Este es un atributo extendido. El sistema establece automáticamente este parámetro y no se le permite configurar ni cambiar el valor del parámetro. Antes de acceder al nombre de dominio de red privada predeterminado, asegúrese de que la subred utiliza el DNS proporcionado por el sistema actual. |
project_id |
String |
Especifica el ID del proyecto. Para obtener más información sobre cómo obtener un ID de proyecto, consulte Obtención de un ID de proyecto. |
created_at |
String |
Especifica la hora (UTC) en la que se crea el puerto. Formato: aaaa-MM-ddTHH:mm:ss |
updated_at |
String |
Especifica la hora (UTC) cuando se actualiza el puerto. Formato: aaaa-MM-ddTHH:mm:ss |
Atributo |
Tipo |
Descripción |
---|---|---|
subnet_id |
String |
Especifica el ID de la subred a la que pertenece el puerto. Este parámetro no se puede actualizar. |
ip_address |
String |
Especifica la dirección IP del puerto. Este parámetro no se puede actualizar. |
Nombre |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
ip_address |
Sí |
String |
|
mac_address |
No |
String |
Especifica la dirección MAC. |
Atributo |
Tipo |
Descripción |
---|---|---|
opt_name |
String |
Especifica el nombre de la opción. |
opt_value |
String |
Especifica el valor de la opción. |
Nombre |
Tipo |
Descripción |
---|---|---|
primary_interface |
Boolean |
Si el valor es true, esta es la NIC principal. |
port_filter |
Boolean |
Especifica el puerto utilizado para filtrar en grupos de seguridad para protegerse contra la suplantación de MAC o IP. |
ovs_hybrid_plug |
Boolean |
Especifica que el conector híbrido OVS debe ser utilizado por las API de Nova. |
Ejemplo de la respuesta
{ "ports": [{ "id": "791870bd-36a7-4d9b-b015-a78e9b06af08", "name": "port-test", "status": "DOWN", "admin_state_up": true, "fixed_ips": [], "mac_address": "fa:16:3e:01:e0:b2", "network_id": "00ae08c5-f727-49ab-ad4b-b069398aa171", "tenant_id": "db82c9e1415a464ea68048baa8acc6b8", "project_id": "db82c9e1415a464ea68048baa8acc6b8", "device_id": "", "device_owner": "", "security_groups": ["d0d58aa9-cda9-414c-9c52-6c3daf8534e6"], "extra_dhcp_opts": [], "allowed_address_pairs": [], "binding:vnic_type": "normal", "binding:vif_details": {}, "binding:profile": {}, "port_security_enabled": true, "created_at": "2018-09-13T01: 43: 41", "updated_at": "2018-09-13T01: 43: 41" }], "ports_links": [ { "rel": "next", "href": "https://{Endpoint}/v2.0/ports?limit=1&marker=791870bd-36a7-4d9b-b015-a78e9b06af08" }, { "rel": "previous", "href": "https://{Endpoint}/v2.0/ports?limit=1&marker=791870bd-36a7-4d9b-b015-a78e9b06af08&page_reverse=True" } ] }
{ "ports": [ { "admin_state_up": true, "allowed_address_pairs": [], "binding:vnic_type": "normal", "device_id": "e6c05704-c907-4cc1-8106-69b0996c43b9", "device_owner": "compute:az3.dc1", "port_security_enabled":true, "extra_dhcp_opts": [], "fixed_ips": [ { "ip_address": "172.16.0.37", "subnet_id": "b3ac1347-63f2-4e82-b853-3d86416a0db5" } ], "dns_assignment": [ { "hostname": "ip-172-16-0-37", "ip_address": "172.16.0.37", "fqdn": "ip-172-16-0-37.xxx.compute.internal." } ], "dns_name": "ip-172-16-0-37", "id": "7bb64706-6e46-4f94-a28a-4bc7caaab87d", "mac_address": "fa:16:3e:f1:0b:09", "name": "port_vm_50_3", "network_id": "a54e1b19-ce78-4b7e-b28b-d2d716cdc161", "security_groups": [ "ef69bc60-2f4b-4f97-b95b-e3b68df0c0b2" ], "status": "ACTIVE", "tenant_id": "6c9298ec8c874f7f99688489ab65f90e", "project_id": "6c9298ec8c874f7f99688489ab65f90e", "created_at": "2018-09-13T01: 43: 41", "updated_at": "2018-09-13T01: 43: 41" } ], "ports_links": [ { "rel": "previous", "href": "https://{Endpoint}/v2.0/ports?mac_address=fa%3A16%3A3e%3Af1%3A0b%3A09&marker=7bb64706-6e46-4f94-a28a-4bc7caaab87d&page_reverse=True" } ] }
{ "ports": [ { "admin_state_up": false, "allowed_address_pairs": [], "binding:vnic_type": "normal", "device_id": "", "device_owner": "", "port_security_enabled":true, "extra_dhcp_opts": [], "fixed_ips": [ { "ip_address": "10.100.100.62", "subnet_id": "9b28f20c-0234-419f-a0b4-4a84f182f64b" } ], "dns_name": "", "id": "ffc0bdee-8413-4fa2-bd82-fa8efe5b3a87", "mac_address": "fa:16:3e:2b:bc:57", "name": "small_net_port", "network_id": "b299b151-7a66-4c6f-a313-cdd3b5724296", "security_groups": [ "ef69bc60-2f4b-4f97-b95b-e3b68df0c0b2" ], "status": "DOWN", "tenant_id": "6c9298ec8c874f7f99688489ab65f90e", "project_id": "6c9298ec8c874f7f99688489ab65f90e", "created_at": "2018-09-13T01: 43: 41", "updated_at": "2018-09-13T01: 43: 41" } ], "ports_links": [ { "rel": "previous", "href": "https://{Endpoint}/v2.0/ports?admin_state_up=False&marker=ffc0bdee-8413-4fa2-bd82-fa8efe5b3a87&page_reverse=True" } ] }
{ "ports": [ { "admin_state_up": true, "allowed_address_pairs": [], "binding:vnic_type": "normal", "device_id": "e6c05704-c907-4cc1-8106-69b0996c43b9", "device_owner": "compute:az3.dc1", "port_security_enabled":true, "extra_dhcp_opts": [], "fixed_ips": [ { "ip_address": "10.1.0.37", "subnet_id": "b3ac1347-63f2-4e82-b853-3d86416a0db5" } ], "dns_assignment": [ { "hostname": "ip-10-1-0-37", "ip_address": "10.1.0.37", "fqdn": "ip-10-1-0-37.xxx.compute.internal."//xxx indicates the region name. } ], "dns_name": "ip-10-1-0-37", "id": "7bb64706-6e46-4f94-a28a-4bc7caaab87d", "mac_address": "fa:16:3e:f1:0b:09", "name": "port_vm_50_3", "network_id": "a54e1b19-ce78-4b7e-b28b-d2d716cdc161", "security_groups": [ "ef69bc60-2f4b-4f97-b95b-e3b68df0c0b2" ], "status": "ACTIVE", "tenant_id": "6c9298ec8c874f7f99688489ab65f90e", "project_id": "6c9298ec8c874f7f99688489ab65f90e" , "created_at": "2018-09-13T01: 43: 41", "updated_at": "2018-09-13T01: 43: 41" } ], "ports_links": [ { "rel": "previous", "href": "https://{Endpoint}/v2.0/ports?device_id=77307088-ae60-49fb-9146-924dcf1d1402&marker=7bb64706-6e46-4f94-a28a-4bc7caaab87d&page_reverse=True" } ] }
{ "ports": [ { "admin_state_up": true, "allowed_address_pairs": [], "binding:vnic_type": "normal", "device_id": "e6c05704-c907-4cc1-8106-69b0996c43b9", "device_owner": "compute:az3.dc1", "port_secuirty_enabled":true, "extra_dhcp_opts": [], "fixed_ips": [ { "ip_address": "10.1.0.37", "subnet_id": "b3ac1347-63f2-4e82-b853-3d86416a0db5" } ], "dns_assignment": [ { "hostname": "ip-10-1-0-37", "ip_address": "10.1.0.37", "fqdn": "ip-10-1-0-37.xxx.compute.internal."//xxx indicates the region name. } ], "dns_name": "ip-10-1-0-37", "id": "7bb64706-6e46-4f94-a28a-4bc7caaab87d", "mac_address": "fa:16:3e:f1:0b:09", "name": "port_vm_50_3", "network_id": "a54e1b19-ce78-4b7e-b28b-d2d716cdc161", "security_groups": [ "ef69bc60-2f4b-4f97-b95b-e3b68df0c0b2" ], "status": "ACTIVE", "tenant_id": "6c9298ec8c874f7f99688489ab65f90e", "project_id": "6c9298ec8c874f7f99688489ab65f90e" , "created_at": "2018-09-13T01: 43: 41", "updated_at": "2018-09-13T01: 43: 41" } ] , "ports_links": [ { "rel": "previous", "href": "https://{Endpoint}/v2.0/ports?tenant_id=6c9298ec8c874f7f99688489ab65f90e&name=port_vm_50_3&marker=7bb64706-6e46-4f94-a28a-4bc7caaab87d&page_reverse=True" } ] }
{ "ports": [ { "status": "DOWN", "allowed_address_pairs": [], "extra_dhcp_opts": [], "device_owner": "", "port_security_enabled":true, "fixed_ips": [ { "subnet_id": "391c74f7-e3b1-405c-8473-2f71a0aec7dc", "ip_address": "10.1.0.33" } ], "dns_name": "", "id": "0f405555-739f-4a19-abb7-ec11d005b3a9", "security_groups": [ "043548bc-1020-4be0-885a-caac8530e8f6" ], "device_id": "", "port_security_enabled":true, "name": "port_vm_50_3", "admin_state_up": true, "network_id": "9898a82d-7795-4ad5-bf2c-0ed8b822be4f", "tenant_id": "3e4a1816927f405cacbc3dca1e05111e", "project_id": "3e4a1816927f405cacbc3dca1e05111e", "created_at": "2018-09-13T01: 43: 41", "updated_at": "2018-09-13T01: 43: 41", "binding:vnic_type": "normal", "mac_address": "fa:16:3e:b0:d9:cf" }, { "status": "ACTIVE", "allowed_address_pairs": [], "extra_dhcp_opts": [], "device_owner": "compute:az3.dc1", "port_security_enabled":true, "fixed_ips": [ { "subnet_id": "b3ac1347-63f2-4e82-b853-3d86416a0db5", "ip_address": "10.1.0.37" } ], "dns_assignment": [ { "hostname": "ip-10-1-0-37", "ip_address": "10.1.0.37", "fqdn": "ip-10-1-0-37.xxx.compute.internal."//xxx indicates the region name. } ], "dns_name": "ip-10-1-0-37", "id": "7bb64706-6e46-4f94-a28a-4bc7caaab87d", "security_groups": [ "ef69bc60-2f4b-4f97-b95b-e3b68df0c0b2" ], "device_id": "e6c05704-c907-4cc1-8106-69b0996c43b9", "name": "port_vm_50_3", "admin_state_up": true, "network_id": "a54e1b19-ce78-4b7e-b28b-d2d716cdc161", "tenant_id": "6c9298ec8c874f7f99688489ab65f90e", "project_id": "3e4a1816927f405cacbc3dca1e05111e", "created_at": "2018-09-13T01: 43: 41", "updated_at": "2018-09-13T01: 43: 41", "binding:vnic_type": "normal", "binding:vnic_type": "normal", "mac_address": "fa:16:3e:f1:0b:09" } ] , "ports_links": [ { "rel": "previous", "href": "https://{Endpoint}/v2.0/ports?name=port_vm_50_3&marker=0f405555-739f-4a19-abb7-ec11d005b3a9&page_reverse=True" } ] }
Código de estado
Véase Códigos de estado.
Código de error
Véase Códigos de error.