Я пытаюсь получить доступ к s3 через интерфейс VPC Endpoint, но у меня возникла техническая проблема, которую я не могу решить.
У меня есть VPC со следующей подсетью:
У меня есть два экземпляра:
У меня есть конечная точка интерфейса VPC для подсетей A, B, а частный DNS включен.
проблема в том, что когда я копаю конечную точку s3.us-east-1.amazonaws.com, в обоих случаях она возвращает IP-адреса конечных точек VPC.
Ожидаемое поведение: Экземпляр i-01 возвращает IP-адреса конечных точек VPC, а экземпляр i-02 возвращает общедоступный региональный IP-адрес.
Я неправильно понимаю концепцию интерфейса или ожидаемое поведение - это то, что должно произойти?
и если я неправильно понимаю, как отделить подсети от использования конечной точки интерфейса и общедоступного IP-адреса
Я неправильно понимаю концепцию интерфейса или ожидаемое поведение - это то, что должно произойти?
Да, у вас неправильное представление. Конечные точки интерфейса имеют область видимости VPC, а не область подсети. Это означает, что все экземпляры в данном VPC будут использовать конечные точки интерфейса, независимо от того, в каких подсетях они находятся.
Чтобы решить эту проблему, отключите Private DNS
и вручную в экземпляре укажите конечную точку интерфейса для экземпляра, который должен его использовать.
То же самое относится и к конечным точкам шлюза, они тоже относятся к VPC?
@ziadhassan Нет. Конечные точки шлюза имеют область подсети. Таким образом, вы можете изменить конечную точку интерфейса на конечную точку шлюза, если речь идет только о S3 или Dynamodb.
@Марчин, это не точно. Конечные точки шлюза имеют область таблицы маршрутов. Если несколько подсетей используют общую таблицу маршрутов VPC, то либо все подсети, связанные с этой таблицей маршрутов, либо ни одна из них не будут использовать данную конечную точку шлюза, в зависимости от того, есть ли у конечной точки запись в соответствующей таблице маршрутов.
Примечание: это связано с использованием предоставленного Amazon DNS и частного DNS в VPC.