IBM Cloud Docs
Creación de una interfaz de red virtual

Creación de una interfaz de red virtual

Se puede crear una interfaz de red virtual sin conectarse a un destino. Por lo tanto, puede existir una interfaz de red virtual incluso cuando se elimina su destino.

Por ejemplo, dentro de una VPC, la instancia tiene una dirección IP pública por la que se puede acceder a la instancia desde Internet y una dirección IP privada por la que se puede acceder desde otras instancias de la VPC. Ha configurado la instancia con reglas de grupo de seguridad personalizadas. Si suprime la instancia, se desconectarán la dirección IP pública y los grupos de seguridad. La dirección IP privada se libera y puede ser reservada de nuevo por otro recurso. Si desea crear una nueva instancia con la misma dirección IP pública, dirección IP privada y grupos de seguridad que la instancia suprimida, debe reservar de nuevo la dirección IP privada y adjuntar individualmente la dirección IP pública y los grupos de seguridad anteriores.

Puede utilizar una interfaz de red virtual para gestionar las direcciones IP y los grupos de seguridad en un recurso independiente con un ciclo de vida independiente de las instancias. Cree una interfaz de red virtual con una dirección IP privada, una dirección IP pública y grupos de seguridad. A continuación, cree una instancia con esta interfaz de red virtual. Posteriormente puede suprimir la instancia, conservando la interfaz de red virtual y crear una nueva instancia con la misma interfaz de red virtual.

Antes de empezar

Para crear una interfaz de red virtual, debe tener los siguientes requisitos previos:

  • Una instancia de VPC
  • Una subred en la que crear una interfaz de red virtual
  • Asegúrese de que tiene los permisos de IAM adecuados. Debe tener permiso de rol de administrador de IAM para configurar la suplantación de IP y la NAT de infraestructura.

Revise las consideraciones de planificación y los problemas conocidos de las interfaces de red virtuales.

Puede crear una interfaz de red virtual con la consola, CLI, API o Terraform.

Creación de una interfaz de red virtual en la consola

Para crear una interfaz de red virtual en la consola, siga estos pasos:

  1. Desde su navegador, abra la consola IBM Cloud y conéctese a su cuenta.

  2. Seleccione el ícono del menú de navegación, luego haga clic en el ícono de Infraestructura VPC > Red > Interfaces de red virtual.

  3. En la página Interfaces de red virtual para VPC, pulse Crear.

  4. En la sección Ubicación, edite los campos siguientes, si es necesario.

    • Geografía: Indica la geografía donde quieres que se cree la interfaz de red virtual.
    • Región: Indica la región donde quieres que se cree la interfaz de red virtual.
  5. En la sección Detalles, complete la información siguiente:

    • Nombre: Especifique un nombre exclusivo para la interfaz de red virtual, como por ejemplo my-virtual-network-interface.
    • Grupo de recursos: Seleccione un grupo de recursos para la interfaz de red virtual.
    • Etiquetas: (opcional) Añade etiquetas que te ayuden a organizar y encontrar tus recursos. Puede añadir más etiquetas posteriormente. Para obtener más información, consulte Cómo trabajar con etiquetas.
    • Etiquetas de gestión de acceso: (opcional) añada etiquetas de gestión de acceso a los recursos para ayudar a organizar las relaciones de control de acceso. El único formato admitido para las etiquetas de gestión de accesos es key:value. Para obtener más información, consulte Control del acceso a los recursos mediante etiquetas.
  6. En la sección Configuración de red, complete la siguiente información:

    • Cloud privado virtual: seleccione la VPC en la que desea crear la interfaz de red virtual. Si necesita crear una VPC, pulse Crear VPC.

    • Subred: Seleccione una subred en la que crear la interfaz de red virtual. Si necesita crear una subred, pulse Crear.

    • Permitir suplantación de IP: Seleccione el conmutador para habilitar o inhabilitar la suplantación de IP.

      • Desactivar la suplantación de IP permite que el tráfico pase a través de la interfaz de red, en lugar de terminar en la interfaz de red.
      • La suplantación de IP solo a<dmite instancias de servidor virtual y servidores nativos. Las comparticiones de archivos no están admitidas.
    • NAT de infraestructura: Seleccione el conmutador para habilitar o inhabilitar NAT de infraestructura.

      NAT de infraestructura se activa cuando se activa la suplantación de IP.

      • Habilitado incluye una dirección IP flotante y da soporte a servidores virtuales, servidores nativos y comparticiones de archivos.

      • Inhabilitado da soporte a varias direcciones IP flotantes sólo en servidores nativos. Los servidores virtuales y los archivos compartidos como destinos de interfaz de red virtual no son compatibles.

        Cuando está inhabilitado, la instancia de servidor virtual recibe el tráfico tal como lo ha enviado el igual, sin NAT. La dirección IP de destino es la dirección IP flotante, y el servidor bare metal es responsable de realizar el NAT.

    • Modalidad de filtrado de estado de protocolo: Seleccione un botón de selección para establecer la modalidad:

      • Auto (valor predeterminado): el filtrado está habilitado o inhabilitado en función del recurso de destino de la interfaz de red virtual.

        • Servidor nativo (Inhabilitado)
        • Instancia de servidor virtual (Habilitado)
        • Montaje de compartición de archivos (Habilitado)
      • Activado: Fuerza que las conexiones TCP se alineen con el RFC793 estándar y cualquier paquete que esté permitido por las reglas del grupo de seguridad y las ACL de red correspondientes.

      • Desactivado: Permite que los paquetes sean permitidos únicamente por las reglas del grupo de seguridad y las ACL de red correspondientes.

  7. En la sección IP primaria, realice las selecciones siguientes.

    • Método de reserva: Seleccione si desea que se cree una dirección IP primaria o si desea especificar una manualmente. Si especifica la suya propia, escriba una dirección IP reservada existente para la interfaz de red virtual o seleccione una en el menú de lista de IP reservadas existente.
    • Release automático: pulse el conmutador para habilitar o inhabilitar el release automático para esta interfaz de red virtual.
  8. En la sección IP flotantes (opcional), pulse Adjuntar. En el panel lateral que aparece, puede seleccionar en la lista existente de direcciones IP flotantes o seleccionar Reservar nueva IP flotante y completar la información que se solicita.

    Si se conecta una IP flotante, la interfaz de red virtual no se aceptará como destino de montaje de compartición de archivos. Si la infraestructura NAT está activada, se puede conectar como máximo una IP flotante.

  9. En la sección IP secundaria (opcional), pulse Adjuntar. Seleccione un método de reserva y especifique si la liberación automática está habilitada.

    Una interfaz de red virtual con IPs secundarias adjuntas no puede ser aceptada como destino de montaje de un recurso compartido de archivos.

  10. En la sección Grupos de seguridad, seleccione al menos uno y como máximo cinco grupos de seguridad para controlar el tráfico a nivel de red. Puede seleccionar grupos de seguridad de la lista o crear uno pulsando Crear. Para obtener más información sobre cómo crear un grupo de seguridad, consulte Creación de grupos de seguridad.

  11. Revise la información en el panel Resumen y pulse Crear interfaz de red virtual.

Creación de una interfaz de red virtual desde la CLI

Antes de empezar, configure el entorno de CLI.

export IBMCLOUD_IS_FEATURE_VNI_ENABLE_PROTOCOL_STATE_FILTERING=true

Para crear una interfaz de red virtual desde la CLI, especifique el mandato siguiente:

ibmcloud is virtual-network-interface-create [--name NAME] [--allow-ip-spoofing false | true] [--auto-delete false | true] [--enable-infrastructure-nat false | true] [--protocol-state-filtering-mode auto | disabled | enabled] [[--rip RIP | [--rip-address RIP_ADDRESS --rip-auto-delete RIP_AUTO_DELETE --rip-name RIP_NAME]]] [--subnet SUBNET] [--ips RESERVED_IPS_JSON | @RESERVED_IPS_JSON_FILE] [--sgs SGS] [--resource-group-id RESOURCE_GROUP_ID | --resource-group-name RESOURCE_GROUP_NAME] [--vpc VPC] [--output JSON] [-q, --quiet]

Donde:

--name
El nombre de esta interfaz de red virtual.
--allow-ip-spoofing
Indica si se permite suplantación de IP de origen en esta interfaz. Si false, se evita la suplantación de IP de origen en esta interfaz. Si true, se permite la suplantación de IP de origen en esta interfaz. Uno de: false, true.
--auto-delete
Indica si esta interfaz de red virtual se suprimirá automáticamente cuando se suprima el destino. Debe ser false si la interfaz de red virtual está desvinculada. Uno de: false, true.
--enable-infrastructure-nat
Si true, la infraestructura VPC realiza cualquier operación NAT necesaria. Si false, los paquetes pasan sin cambios a/desde la interfaz de red, permitiendo que la carga de trabajo realice cualquier operación NAT necesaria. Uno de: false, true.
--protocol-state-filtering-mode
El estado de la modalidad de filtrado de estado de protocolo. Uno de auto, enabled, disabled.
  • Auto (valor predeterminado): el filtrado está habilitado o inhabilitado en función del recurso de destino de la interfaz de red virtual.
    • Servidor nativo (Inhabilitado)
    • Instancia de servidor virtual (Habilitado)
    • Montaje de compartición de archivos (Habilitado)
  • Activado: Fuerza que las conexiones TCP se alineen con el RFC793 estándar y cualquier paquete que esté permitido por las reglas del grupo de seguridad y las ACL de red correspondientes.
  • Desactivado: Permite que los paquetes sean permitidos únicamente por las reglas del grupo de seguridad y las ACL de red correspondientes.
--rip
ID o nombre de la IP reservada para enlazar con la interfaz de red virtual.
--rip-address
La dirección IP de la IP reservada para enlazar con la interfaz de red virtual.
--rip-auto-delete
Indica si esta IP reservada se suprimirá automáticamente cuando se suprima el destino o se desvincule la IP reservada.
--rip-name
El nombre de esta IP reservada para enlazar con la interfaz de red virtual.
--subnet
La subred asociada.
--ips ips RESERVED_IPS_JSON | @RESERVED_IPS_JSON_FILE
Direcciones IP reservadas secundarias en JSON o archivo JSON, para vincular a la interfaz de red virtual. Para el esquema de datos, consulte la propiedad IPs en la documentación de la API. Uno de: RESERVED_IPS_JSON, @RESERVED_IPS_JSON_FILE.
--sgs
ID o nombres de los grupos de seguridad que se van a utilizar para la interfaz de red virtual.
--resource-group-id
ID del grupo de recursos. Esta identificación es mutuamente excluyente con --resource-group-name.
--resource-group-name
Nombre del grupo de recursos. Este nombre es mutuamente excluyente con --resource-group-id.
--vpc
ID o nombre de la VPC a la que está asociada esta VNI.
--output
Especificar el formato de salida, solo se admite JSON. Valores posibles: JSON.
-q, --quiet
Suprimir la salida detallada.

Ejemplos de mandato

  • ibmcloud is virtual-network-interface-create --subnet 7208-d42716a5-6df2-416c-979d-f26330b9eod1
  • ibmcloud is virtual-network-interface-create --name cli-vni-1 --allow-ip-spoofing true --auto-delete true --enable-infrastructure-nat true --protocol-state-filtering-mode auto --rip 7208-d4c0abbe-3fc2-4696-9fe1-4eb3dc9af976 --ips '[{"id":"7208-d83b7e58-3c3d-47d0-89c5-02d9a20c72fd"},{"address":"10.240.64.13", "auto_delete": false, "name": "srip2"}]' --sgs r006-aa7c7658-e503-4456-b342-8d6a89e05115,r006-4fb388f1-2b6e-4013-b279-7a8748f4d6ca --resource-group-id 11caaa983d9c4beb82690daab08717e9
  • ibmcloud is virtual-network-interface-create --name cli-vni-2 --allow-ip-spoofing true --auto-delete true --enable-infrastructure-nat true --protocol-state-filtering-mode enabled --rip cli-rip-1 --subnet my-subnet --vpc vpc-cli-1 --ips '[{"id":"7208-d83b7e58-3c3d-47d0-89c5-02d9a20c72fd"},{"address":"10.240.64.14", "auto_delete": false, "name": "srip3"}]' --sgs cli-sg,sanctity-contest-only-filing --resource-group-name Default
  • ibmcloud is virtual-network-interface-create --name cli-vni-4 --allow-ip-spoofing false --auto-delete false --enable-infrastructure-nat false --protocol-state-filtering-mode disabled --subnet 7208-bfe017e7-6e71-415a-8615-0ee787fbeef9 --rip-address 10.240.64.15 --rip-auto-delete false --rip-name primar-ip-1 --ips '[{"id":"7208-2772a45f-c062-4e22-bafb-32ea792da56b"},{"address":"10.240.64.17", "auto_delete": false, "name": "sec-ip-2"}]' --sgs r006-aa7c7658-e503-4456-b342-8d6a89e05115,r006-4fb388f1-2b6e-4013-b279-7a8748f4d6ca --resource-group-id 11caaa983d9c4beb82690daab08717e9
  • ibmcloud is virtual-network-interface-create --name cli-vni-3 --allow-ip-spoofing true --auto-delete false --enable-infrastructure-nat true --protocol-state-filtering-mode auto --subnet my-subnet --vpc vpc-cli-1 --rip-address 10.240.64.18 --rip-auto-delete true --rip-name primar-ip-2 --ips '[{"id":"7208-d42716a5-6df2-416c-979d-f26330b9d0b1"},{"address":"10.240.64.19", "auto_delete": true, "name": "sec-ip-3"}]' --sgs cli-sg,sanctity-contest-only-filing --resource-group-name Default

Creación de una interfaz de red virtual con la API

Para crear una interfaz de red virtual con la API, siga estos pasos:

  1. Configure el entorno de la API con las variables adecuadas.

  2. Almacene las variables adicionales que se van a utilizar en los mandatos de la API; por ejemplo:

    • version (serie): la versión de la API, en formato YYYY-MM-DD.
  3. Cuando se hayan iniciado todas las variables, cree la interfaz de red virtual:

    curl -X POST \
        "$vpc_api_endpoint/v1/virtual_network_interfaces?version=$version&generation=2" \
        -H "Authorization: Bearer $iam_token" \
        -d '{
              "name": "my-virtual-network-interface",
              "primary_ip": {
                "address": "10.0.0.5"
              },
              "protocol_state_filtering_mode": "disabled",
              "security_groups": [
                {
                  "id": "be5df5ca-12a0-494b-907e-aa6ec2bfa271"
                },
                {
                  "id": "032e1387-71ba-4e83-b268-a53edf94af19"
                }
              ],
              "subnet": {
                "id": "032e1387-71ba-4e83-b268-a53edf94af19"
              }
      }'
    

Creación de una interfaz de red virtual con Terraform

El ejemplo siguiente crea una interfaz de red virtual utilizando Terraform:

resource "ibm_is_virtual_network_interface" "is_virtual_network_interface_instance" {
  allow_ip_spoofing = true
  auto_delete = false
  enable_infrastructure_nat = true
  name = "my-virtual-network-interface"
  subnet = "<SubnetId>"
  protocol_state_filtering_mode = "auto"
}

Para más información, consulte el registro de Terraform.