Cómo activar el reenvío de IP para la interfaz si ya se creó la regla de reenvío

Cómo activar el reenvío de IP para la interfaz si ya se creó la regla de reenvío

Estoy intentando activar el reenvío de IP para una interfaz de una instancia alojada en Google Cloud.

  1. Tengo una instancia de micro VM f1 en Google Compute Engine.
  2. Creé exitosamente una regla de reenvío de IP con gcloudaquí.
    El comando compute forwarding-rules describe myrulenamehereproporciona una descripción de la regla.
  3. Cuando abro la página de detalles de la instancia de VM, el reenvío de IP está marcado como APAGADO y no puedo cambiarlo mediante el botón EDITAR.

¿Cómo activar el reenvío de IP para la interfaz si ya se creó la regla de reenvío?

Respuesta1

No puedes cambiar este valor ya que es unsolo lecturavalor para instancias ya creadas. De la documentación oficial de Google que puedes consultaraquí:

Solo puede configurar el campo canIpForward en el momento de la creación de la instancia. Una vez creada una instancia, el campo pasa a ser de solo lectura.

Por lo tanto, creo que la única opción que tiene ahora es crear nuevamente la máquina virtual, la instancia de destino y la regla de reenvío. Puede habilitar el reenvío de IP en el momento de la creación con la bandera --can-ip-forward, por ejemplo:

gcloud compute instances create instance-name --can-ip-forward

También puede habilitarlo desde la Consola, en el menú de la interfaz de Red, en el momento de la creación de la instancia.

También puedes mantener la misma regla de reenvío yactualizar la instancia de destinosolo corriendo:

gcloud compute forwarding-rules set-target ...

Respuesta2

GCP ha agregado la opción de actualizar IP_FORWARDING sin volver a crear la instancia de VM.

gcloud compute instances update-from-file INSTANCE_NAME

Para más detalles consulte actualizar-instancia-propiedades.

Respuesta3

Como dijo @Ivan, GCP ahora permite configurar canIpForward después de la creación. Pero si es nuevo en GCP, no es intuitivo cómo hacerlo desde el shell/terminal de la nube.

Abra la consola y luego ejecute el siguiente comando:

gcloud compute instances export $myInstanceName --project $myProjectId --zone $instanceZone --destination=config_old.txt

El archivo de configuración termina en el almacén de su instancia de shell, no en su estación de trabajo local (independientemente de cuál sea eldocumentacióndice).

Haga clic en los 3 puntos verticales justo encima del terminal y haga clic en descargar. Desempaquete el archivo zip y busque config_old.txt. Edite los atributos que desea cambiar (canIpForward: true), guarde el archivo como config_new.txt. Haga clic en los 3 puntos verticales y luego cargue -> archivo -> navegador -> cargar.

Una vez cargado, emita el siguiente comando:

gcloud compute instances update-from-file $myInstanceName --project $myProjectId --zone $instanceZone --source=/home/some_folder/config_new.txt --most-disruptive-allowed-action=REFRESH

Verifique las interfaces de red para la instancia: el reenvío de IP ahora está activado

Ejemplo con valores:

gcloud compute instances export server1-example-com --project example-project --zone us-west4-c --destination=config_old.txt

gcloud compute instances update-from-file server1-example-com --project example-project --zone us-west4-c --source=/home/some_folder/config_new.txt --most-disruptive-allowed-action=REFRESH

información relacionada