Конечная точка интерфейса VPC доступна из подсетей, которые с ней не связаны

Я пытаюсь получить доступ к s3 через интерфейс VPC Endpoint, но у меня возникла техническая проблема, которую я не могу решить.

У меня есть VPC со следующей подсетью:

  1. Подсеть A (частная без Интернета)
  2. Подсеть B (частная без Интернета)
  3. Подсеть C (общедоступная с интернет-шлюзом)
  4. Подсеть D (частная с NAT)

У меня есть два экземпляра:

  1. i-01 (Подсеть А)
  2. i-02 (Подсеть D)

У меня есть конечная точка интерфейса VPC для подсетей A, B, а частный DNS включен.

проблема в том, что когда я копаю конечную точку s3.us-east-1.amazonaws.com, в обоих случаях она возвращает IP-адреса конечных точек VPC.

Ожидаемое поведение: Экземпляр i-01 возвращает IP-адреса конечных точек VPC, а экземпляр i-02 возвращает общедоступный региональный IP-адрес.

Я неправильно понимаю концепцию интерфейса или ожидаемое поведение - это то, что должно произойти?

и если я неправильно понимаю, как отделить подсети от использования конечной точки интерфейса и общедоступного IP-адреса

Примечание: это связано с использованием предоставленного Amazon DNS и частного DNS в VPC.

jarmod 03.04.2023 04:19
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
1
87
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я неправильно понимаю концепцию интерфейса или ожидаемое поведение - это то, что должно произойти?

Да, у вас неправильное представление. Конечные точки интерфейса имеют область видимости VPC, а не область подсети. Это означает, что все экземпляры в данном VPC будут использовать конечные точки интерфейса, независимо от того, в каких подсетях они находятся.

Чтобы решить эту проблему, отключите Private DNS и вручную в экземпляре укажите конечную точку интерфейса для экземпляра, который должен его использовать.

То же самое относится и к конечным точкам шлюза, они тоже относятся к VPC?

ziad hassan 03.04.2023 01:49

@ziadhassan Нет. Конечные точки шлюза имеют область подсети. Таким образом, вы можете изменить конечную точку интерфейса на конечную точку шлюза, если речь идет только о S3 или Dynamodb.

Marcin 03.04.2023 01:50

@Марчин, это не точно. Конечные точки шлюза имеют область таблицы маршрутов. Если несколько подсетей используют общую таблицу маршрутов VPC, то либо все подсети, связанные с этой таблицей маршрутов, либо ни одна из них не будут использовать данную конечную точку шлюза, в зависимости от того, есть ли у конечной точки запись в соответствующей таблице маршрутов.

Michael - sqlbot 04.04.2023 03:54

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