빨리 일어선 후AWS EC2 인스턴스Linux 플랫폼의 경우 SSH 클라이언트(예: PuTTY)를 통해 AWS 외부에서 연결을 시도했습니다. ec2 구성을 살펴보면 다음과 같습니다.공개IPv주소와비공개IPv주소. 그런데 확인해 보니외부 세계의 http 트래픽 허용.
누구든지 내 다음 문제를 설명해 주시면 감사하겠습니다.
- 원격으로 서버에 접속할 수 있어요공개 IP그런데 사설IP가 없는데 왜 그럴까요?
- 달리면
ip addr show eth0
다시 돌아온다비공개 IP. 공개 IP를 기대하고 있습니다.
나는 차이점을 찾아보았고 아래 stmt가 말하는 내용을 이해한다고 생각합니다.
공용 주소를 사용하여 인스턴스와 인터넷 간에 통신할 수 있습니다. AWS는 외부 DNS 호스트 이름을 인스턴스 네트워크 외부에 있는 인스턴스의 퍼블릭 IP 주소와 인스턴스 네트워크 내부에 있는 인스턴스의 프라이빗 IPv4 주소로 확인합니다.
답변1
IPv4 퍼블릭 주소의 경우 AWS는 EC2 서버 인스턴스를 사용하여 대부분의 신규 AWS 사용자가 기대하지 않는 작업을 수행합니다. 처음에는 이것 때문에 정말 혼란스러웠습니다.
퍼블릭 IP 주소는 EC2 서버와 연결되어 있지만 서버 자체에서 구성되지는 않습니다. 대신, VPC의 인터넷 게이트웨이에는 공용 주소가 있으며 주소 변환을 수행합니다. EC2 서버의 네트워크 구성에는 사용자가 사용 ifconfig
하거나 볼 수 있는 개인 IP 주소만 있습니다 ip addr show
.
EC2 서버의 프라이빗 IP 주소는 퍼블릭 인터넷에서 접근할 수 없으며, 퍼블릭 IP 주소에만 접근할 수 있습니다. VPC 내에서 EC2 서버의 프라이빗 IP에 액세스할 수 있으며, 프라이빗 서브넷에 NAT 게이트웨이가 있는 경우 EC2 서버의 퍼블릭 IP에도 액세스할 수 있습니다.
그러나 실제로는 VPC 내부의 트래픽이 공용 인터넷으로 이동하는 것을 원하지 않으며, "헤어핀" 방식으로 다시 VPC로 돌아가서 이 EC2 서버에 도달하기만 하면 됩니다. 나머지 VPC의 경우 프라이빗 IP 주소를 통해 이 EC2 서버에 연결하는 것이 더 나은 구성이며 네트워크 트래픽 비용이 더 저렴합니다.
AWS IPv6 주소에 대한 참고 사항을 추가하도록 편집되었습니다. AWS는 수년 전에 위에서 언급한 퍼블릭 IPv4 주소에 대한 설계를 만들었습니다. AWS는 지난 몇 년 동안 IPv6 주소만 지원하기 시작했으며 v6 주소 작동 방식은 다르게 설계되었습니다.
EC2 서버가 IPv6 주소로 구성된 경우(VPC와 서브넷도 v6으로 구성되어야 함) EC2 서버는 서버 자체에 v6 주소가 구성되어 있으며 v6 주소는 네트워크 구성 명령을 통해 표시됩니다. 예를 들어 ip addr show
. VPC의 인터넷 게이트웨이는 주소 변환을 수행하지 않습니다.
어떻게 다르게 작동하는지 모르는 일부 사용 사례가 있을 수 있지만(예: BYOIP - 대규모 고객이 사용할 수 있는 자체 IP [주소] 가져오기) AWS에서 제공한 IP 주소를 사용하는 고객의 경우(대부분이라고 생각합니다) , 이것이 작동하는 방식입니다.