Как включить IP-пересылку для интерфейса, если правило пересылки уже создано

Я пытаюсь включить IP-пересылку для интерфейса экземпляра, размещенного в Google Cloud.

  1. У меня есть экземпляр микро-виртуальной машины f1 в Google Compute Engine.
  2. Я создал правило пересылки IP с помощью gcloud здесь.
    команда compute forwarding-rules describe myrulenamehere выдает описание правила.
  3. Когда я открываю страницу сведений об экземпляре виртуальной машины, IP-пересылка помечается как OFF, и я не могу изменить ее с помощью кнопки EDIT.

Как включить IP-пересылку для интерфейса, если правило переадресации уже было создано?

3 ответа

Решение

Вы не можете изменить это значение, поскольку оно доступно только для чтения для уже созданных экземпляров. Из официальной документации Google, которую вы можете проверить здесь:

Вы можете установить поле canIpForward только во время создания экземпляра. После создания экземпляра поле становится доступным только для чтения.

Поэтому я думаю, что единственный вариант, который у вас есть сейчас, - это снова создать виртуальную машину, целевой экземпляр и правило пересылки. Вы можете включить ip-forwarding во время создания с флагом --can-ip-forward, например:

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

Вы также можете включить его из консоли, в меню сетевого интерфейса, при создании экземпляра.

Вы также можете сохранить то же правило пересылки и обновлять целевой экземпляр, только работая:

gcloud compute forwarding-rules set-target ...

В GCP добавлена ​​возможность обновлять IP_FORWARDING без повторного создания экземпляра виртуальной машины.

      gcloud compute instances update-from-file INSTANCE_NAME

Для получения более подробной информации проверьте свойства update-instance-properties.

Как заявил @Ivan, GCP теперь позволяет устанавливать canIpForward после создания. Но если вы новичок в GCP, вам непонятно, как это сделать из облачной оболочки/терминала.

откройте консоль и введите следующую команду:

      gcloud compute instances export myInstanceName --project myProjectName --zone instanceZone --destination=instConfig.txt

Конфигурационный файл заканчивается в хранилище вашего экземпляра оболочки, а не на вашей локальной рабочей станции (независимо от того, что сказано в документации ).

Нажмите на три вертикальные точки над терминалом и нажмите «Загрузить». Распакуйте zip-файл и найдите instConfig.txt. Отредактируйте атрибуты, которые хотите изменить, сохраните файл. Нажмите три вертикальные точки, а затем загрузите -> файл -> браузер -> загрузить.

после загрузки введите следующую команду:

gcloud compute instances update-from-file myInstanceName --project myProjectName --zone instanceZone --source=instConfig.txt --most-disruptive-allowed-action=REFRESH

Проверьте сетевые интерфейсы экземпляра: переадресация IP теперь включена.

Другие вопросы по тегам