EC2 인스턴스에는 퍼블릭 DNS가 없습니다
내가 일하는 사람이 EC2 콘솔에 로그온 할 수있는 EC2 자격 증명을 제공했습니다. 나는 그것을 설정 한 사람이 아니었다. 일부 인스턴스에는 공개 DNS 이름이 표시되고 다른 인스턴스에는 공개 DNS가 비어 있습니다. 빈 퍼블릭 DNS가있는 인스턴스에 연결할 수 있기를 원합니다. 왜 이것이 공백으로 나타나는지 알 수 없었습니다.
나는 같은 문제를 해결했다. 단계별 지침을 살펴보십시오.
- console.aws.amazon.com으로 이동
- 서비스로 이동 -> VPC
- VPC 열기
- EC2에 연결된 VPC를 선택 하고
- 조치 => DNS 호스트 이름 편집 ---> DNS 호스트 이름 변경 :을 예로 선택하십시오.
도움이 되었기를 바랍니다!
건배
실제로 VPC에는 "DNS 호스트 이름"이라는 설정이 있습니다. EC2 인스턴스가있는 VPC를 수정하고 "예"로 변경할 수 있습니다. 그 트릭을해야합니다.
어제이 문제에 부딪 쳤고 작동하지 않는 Manny의 위의 답변을 시도했습니다. 상기 VPC 설정, 그러나, 한 나를 위해 일을.
궁극적으로 나는 EIP를 추가하고 그것을 사용하여 연결합니다.
인스턴스가 VPC에서 시작된 것처럼 들리고 그렇게하는 동안 확인란 Automatically assign a public IP address to your instances
이 선택되지 않았습니다. 따라서 인스턴스에 퍼블릭 IP가 없습니다
이 인스턴스에 탄력적 IP를 할당 한 다음 해당 IP를 사용하여 로그인 할 수 있습니다.
내 경우에는 slayedbylucifer 와 같은 것을 가리키는 다른 사람들 의 대답 이 유효하다는 것을 알았습니다 . my-pvc 에 공용 IP가 할당되지 않은
것으로 설정되어 있습니다 (Privat IP 만 해당).DNS hostname: yes
반드시 자동 할당 퍼블릭 IP 를 설정해야
Enable
합니다.
선택하지 않으면 기본적으로Use subnet setting (Disable)
- AWS Console로 이동하십시오.
- 서비스로 이동하여 VPC를 선택하십시오.
- vpc를 클릭하십시오.
- 인스턴스를 선택하고 조치를 클릭하십시오.
- DNS 호스트 이름 편집을 선택하고 예를 클릭하십시오.
결국 당신은 당신의 공공 dns를 얻을 것이다.
다음은 작동하지 않는 문제를 해결하기 위해 제공되는 팁입니다.
팁-인스턴스에 퍼블릭 DNS 이름이없는 경우 VPC 콘솔을 열고 VPC를 선택한 다음 요약 탭을 확인하십시오. DNS 확인 또는 DNS 호스트 이름이 아니요 인 경우 편집을 클릭하고 값을 예로 변경하십시오.
이 작업을 수행했지만 여전히 공개 IP를 얻지 못한다고 가정하면 VPC 관리 화면에서 해당 서브넷으로 이동하면 "공용 IP 자동 할당"이 예로 설정되지 않은 것입니다. 그런 다음 해당 설정을 수정하면이 서브넷에서 원하지 않는 것을 알고 해당 서브넷에 새 인스턴스를 만듭니다. 내가 호스트에서 이것을 수정할 수 없다는 것을 알 수있는 한, 시도하고 시도했습니다. 종료하십시오.
나에게 문제는 서브넷 설정에 있었다.
- https://console.aws.amazon.com/vpc를 엽니 다.
- 왼쪽 메뉴에서 서브넷으로 이동
- 서브넷을 선택하십시오
- 자동 할당 IP 설정 수정
다른 인스턴스를 시작하고 (사용하지 않는 경우 해당 인스턴스를 삭제) 이번에는 "인스턴스에 퍼블릭 IP 주소 자동 할당"을 선택하십시오. 그렇지 않다면, 루시퍼가 제안한대로; 인스턴스에 탄력적 IP (EIP)를 할당 한 다음 해당 IP를 사용하여 로그인하십시오. 무료 AWS 티어를 실행하는 경우 EIP에 비용이 발생합니다. 이는 '다른 주제'입니다.
"DNS 호스트 이름"이라는 VPC 기능과 관련이 있습니다. 활성화 또는 비활성화 할 수 있습니다. VPC로 이동하여 작업 메뉴에서 "DNS 호스트 이름 편집"항목을 선택한 다음 "예"를 선택하십시오. 그런 다음 EC2 인스턴스의 퍼블릭 DNS가 표시되어야합니다.
우선, 두 가지 이유가 있습니다.
- 자체 VPC를 생성하고 퍼블릭 DNS를 활성화하는 것을 잊었습니다.
이것을 해결하려면 :
i) AWS VPC 콘솔로 이동하여 생성 한 VPC를 선택하십시오.
ii) 그런 다음 작업을 클릭 한 다음 DNS 확인을 활성화하십시오.
OR
- EC2 구성에서 공용 ip-assign 옵션을 활성화하지 않았습니다.
여기에서 설정을 변경할 수 없습니다. 따라서 ami 이미지를 생성 한 다음 그 인스턴스를 다시 생성하십시오.
CloudFormation을 사용하는 사용자의 경우 주요 특성은 EnableDnsSupport 및 EnableDnsHostnames 이며 true로 설정해야합니다.
VPC: {
Type: 'AWS::EC2::VPC',
Properties: {
CidrBlock: '10.0.0.0/16',
EnableDnsSupport: true,
EnableDnsHostnames: true,
InstanceTenancy: 'default',
Tags: [
{
Key: 'env',
Value: 'dev'
}]
}
}
VPC 및 서브넷 설정을 확인한 후에도 EC2 인스턴스에 퍼블릭 DNS가 없었습니다. 하루 동안 해결책을 찾은 후에 마침내 알아 냈습니다.
새 탄력적 IP 주소를 생성 한 다음이를 인스턴스에 연결해야했습니다.
EC2 대시 보드에서 :
사이드 바에서 탄력적 IP 로 이동 하십시오.
새 주소 할당을 클릭 한 다음 할당을 클릭하십시오 .
EC2 대시 보드로 돌아갑니다. 네트워크 인터페이스로 이동하십시오 .
퍼블릭 DNS가없는 EC2 인스턴스를 선택하십시오. 그런 다음 작업-연결 주소 .
주소 필드에 새 탄성 IP 주소를 선택합니다.
개인 IP 주소에 준 필드는, 아니 공용 DNS와 사설 IP 주소를 선택합니다.
주소 연결을 클릭하십시오 .
EC2 인스턴스에는 이제 퍼블릭 DNS가 있어야합니다.
인스턴스가 VPC에있는 경우 "DNS 확인"및 "DNS 호스트 이름"이 "예"로 설정되어 있는지 확인하십시오. Aws 콘솔 UI에서이 작업을 수행 할 수 있습니다. HTH!
VPC 콘솔로 이동하여 VPC를 선택하고 작업 메뉴를 클릭하고 DNS 호스트 이름 편집을 선택한 다음 예를 선택하십시오. 해결해야합니다.
AWS CLI를 사용하여 DNS 호스트 이름 설정을 변경할 수도 있습니다.
aws ec2 modify-vpc-attribute --vpc-id $vpc_id --enable-dns-hostnames '{"Value": true}'
(여기서 $ vpc_id는 인스턴스가 연결된 VPC의 ID입니다.)
VPC가 업데이트 되 자마자 인스턴스는 퍼블릭 DNS를 얻게됩니다.
퍼블릭 IP 주소를 인스턴스에 할당 할 필요는 없습니다. NAT 인스턴스 또는 NAT 게이트웨이를 사용할 수 있습니다.
https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Scenario2.html https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-comparison.html
참고 URL : https://stackoverflow.com/questions/20941704/ec2-instance-has-no-public-dns
'Programing' 카테고리의 다른 글
Thread에서 ThreadStart 메소드에 매개 변수를 전달하는 방법은 무엇입니까? (0) | 2020.03.25 |
---|---|
git / GitHub의 기록에서 폴더와 그 내용을 제거하십시오 (0) | 2020.03.25 |
JavaScript로 이미지의 실제 너비와 높이를 얻으시겠습니까? (0) | 2020.03.25 |
JSP 또는 JSTL 내에있는 경우 (0) | 2020.03.25 |
ASP.NET MVC-컨트롤러에서 App_Data 폴더의 절대 경로 찾기 (0) | 2020.03.25 |