
Estoy intentando activar el reenvío de IP para una interfaz de una instancia alojada en Google Cloud.
- Tengo una instancia de micro VM f1 en Google Compute Engine.
- Creé exitosamente una regla de reenvío de IP con gcloudaquí.
El comandocompute forwarding-rules describe myrulenamehere
proporciona una descripción de la regla. - 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