[AWS] Route 53 과 VPC

SJ.CHO·2024년 11월 18일
post-thumbnail

DNS (Domain Name System) 란?

  • 인터넷에서 사용되는 컴퓨터 혹은 디바이스 주소들을 사용자들이 이해하시 쉽게 도메인 이름(Ex: www.google.com)으로 변환해주는 시스템이다.
  • 인터넷에 연결된 디바이스들은 모두 IP 주소를 지니고있지만 사용자들이 이를 사용하기 어렵기에 쉽게 이해가 가능한 도메인이름으로 변경해주는 역할을 가진다.
  1. Root DNS Server
  • Root DNS Server는 DNS 계층 구조에서 가장 상위에 위치한 DNS 서버이다.
  • 모든 DNS 쿼리는 먼저 Root DNS Server에 도착하여 해당 도메인의 TLD(Top-Level Domain) DNS Server의 주소를 알아내야 한다.
  • Root DNS Server는 인터넷 상에서 전 세계에 총 13개가 운영되고 있으며, 이들은 전 세계의 인터넷 서비스 제공 업체들에 의해 운영된다.
  1. TLD DNS Server
  • TLD DNS Server는 도메인 이름의 최상위 레벨에 해당하는 .com, .net, .org, .kr 등의 TLD를 관리하는 DNS 서버이다.
  • 모든 도메인 이름은 하나 이상의 TLD에 속하며, TLD DNS Server는 해당 도메인 이름이 속한 SLD(Secod-Level Domain) DNS Server의 주소를 알려준다.
  1. SLD DNS Server
  • SLD DNS Server는 도메인 이름의 중간 레벨에 해당하는 DNS 서버이다.

  • 도메인 이름의 중간 레벨에 해당하는 부분은 일반적으로 사용자가 만든 이름이며, SLD DNS Server는 해당 도메인 이름에 대한 IP 주소를 반환한다.

  • 접속마다 모두 이 과정을 거치는것은 아니며, 브라우저, Local DNS상의 캐시형태로 남겨두어서 사용을 하고, 존재하지않을 시 위 과정을 반복한다.


Route 53 사용하기

  • 도메인 등록방법은 매우 간단하며, 자신이 사용할 도메인이 사용가능한상태인지 확인 후 개인정보 입력 및 연간 $12~15 정도의 지출이 발생하게 된다.

왜 53 인가?

  • HTTP, HTTPS 등이 고유한 포트번호를 사용하듯이 DNS 또한 전통적으로 고유의 포트번호인 53 포트를 사용하는것에서 비롯됐다.

IPv4, v6, 레코드타입, TTL

IPv4,v6

  • IPv4
    • 인터넷 프로토콜 주소체계로 총 32bit의 자릿수로 구성이 되어져 있다. (Ex: 192.168.0.1)
    • 간단하고 기억하기 쉬우면서, 대부분의 웹사이트의 지원되고 신뢰성이높다.
    • 단점으론 점차 디바이스들이 늘어나면서 주소의 총양이 부족해지고 서브넷문제가 발생할 수 있다.
  • IPv6
    • v4 의 단점인 주소의 총양을 보완하고자 128bit 자릿수를 가지며 약 340억개의 IP주소를 제공한다.
    • 서브넷 문제가 발생하지 않는다.
    • 구현하기가 어렵고, 하위호환성이 없기에 따로지원하거나 둘다 지원을 해야한다.

레코드 타입

  • 도메인 이름과 IP주소나 다른 중요정보와 연결할수 있도록 사용하는 기술 이다.
    • A 레코드 : 호스트네임과 IPv4 주소를 연결한다.
    • AAAA 레코드 : 호스트네임과 IPv6 주소를 연결 한다.
    • CNAME 레코드 : 호스트네임을 다른 호스트네임 과 연결한다. 다른 호스트네임은 반드시 A 혹은 AAAA 레코드가 있어야한다.
      • 한 도메인을 여러서비스로 리다이렉트 시킬때 유용하다.
    • NS 레코드 : 호스트존의 네임서버를 지정한다.
      • 도메인 이름의 관리자 를 알려주는 역할로 특정도메인의 DNS 요청시 어떤 네임서버 가 이를 처리해야하는지 알려주는 역할을 한다.

CNAME vs Alias

  • 호스트이름을 다른 호스트이름에 매칭하는데 사용되며, 용도가 비슷해보이나 서로 다른 용도를 지닌다.

TTL (Time to Live)

  • DNS 레코드가 캐싱될 수 있는 최대 시간을 나타내는 값이다.
  • TTL이 높을수록 DNS 레코드가 캐싱될 수 있는 시간이 더 길어지므로, 캐시 효율성은 높아집니다. 일반적으로, TTL은 몇 분에서 몇 시간까지로 설정된다.

DNS 적용하기

  • DNS가 호스팅이 완료된다면 네임서버를 받은것을 확인할 수 있다.
  • 4개의 네임서버를 받는 이유는 하나의 네임서버가 오류로 작동을하지 않을때 사용하기 위해서 보통 4개정도의 네임서버를 가진다.

  • 레코드 타입 및 TTL을 적용할 수 있다.
  • Value 내에 EC2 퍼블릭 링크 혹은 로드밸런서의 DNS 주소를 입력하면 정상작동한다.

VPC (Virtual Private Cloud)

  • AWS 에서 제공하는 클라우드 컴퓨팅 리소스를 사용할 수 있는 가상의 사설 네트워크이다.
  • 사용자는 VPC 내에서 IP 주소 범위, 라우팅 테이블, 서브넷 및 보안 그룹을 설정 할 수 가 있다.
  • VPC 를 사용하게 된다면, 다양한 AWS 리소스를 시작하고 관리 할 수 있다.

서브넷, 게이트웨이, NAT

  • 서브넷
    • VPC 내에서 IP 주소범위를 지정하는 가상의 네트워크로, 라우팅 테이블에 연결되며 각 서브넷은 하나의 라우팅테이블에만 연결이 가능하다.
    • 서브넷을 사용하면, VPC 내부에서 다른 서브넷과 격리된 가상 네트워크를 생성할 수 있다.
    • 다양한 서비스를 실행하는데 있어 필요한 보안 요구사항을 만족시키기 쉽다.
  • 퍼블릭 서브넷
    • 인터넷 게이트웨이와 연결된 서브넷으로, 인터넷 즉 외부와 직접적으로 연결되어 있는 서브넷이다.
    • 퍼블릭 서브넷을 통하여 인스턴스에 직접 실행이 가능하며, 트래픽을 전송할 수 있다.
  • 프라이빗 서브넷
    • 인터넷과 직접적으로 연결되있지 않은 가상의 네트워크로, 외부에서 직접 액세스할 수 없다.
    • 대신, NAT 게이트 웨이 및 VPC 피어링을 통하여 인스턴스 혹은 VPC 와 연결이 가능하다.
  • VPC 라우팅테이블
    • VPC내에서 트래픽이 전달되는 방법을 제어하는데 사용된다. 각 라우팅 테이블은 서브넷과 연결되며, 서브넷은 하나의 라우팅 테이블이 존재한다.
    • 라우팅 테이블은 목적지 IP 주소와 대상 게이트웨이 혹은 NAT 게이트웨이와 같은 대상을 매핑한다.
    • 라우팅테이블은 여러개의 규칙을 가지며, 서브넷에서 트래픽 전달방법을 제어한다.
  • IGW (Internet Gateway)
    • VPC 와 인터넷간의 통신을 가능하게 하는 게이트웨이 이다.
    • 인터넷을 통해 VPC 내부로 들어오는 트래픽을 받아 해당 VPC에 연결된 서브넷으로 라우팅 해준다.
  • NAT (Network Address Translation) Gateway
    • 프라이빗 서브넷에서 아웃바운드 인터넷 트래픽을 가능하게 해주는 서비스 이다.
    • 프라이빗 서브넷 내 인스턴스가 인터넷으로 나가는 트래픽을 대신하여 공인 IP 주소를 사용하고, 인터넷 게이트웨이로부터 들어오는 트래픽을 프라이빗 서브넷으로 라우팅한다.

profile
70살까지 개발하고싶은 개발자

0개의 댓글