이 글은 ASAC 06기를 수강하며 강의 자료 참고 및 추가 자료 수집을 통해 작성된 글입니다.
인트라넷과 인터넷
- AP
네트워크에서 ACCESS POINT. 라우터 혹은 리피터를 의미한다.- 라우터 -> 노드 간 연결
- 리피터 -> 신호 연장
- Intranet 인트라넷(사내망, Private Network)
대학, 연구기관, 집과 같이 갇힌 공간에 국한된 네트워크
=> AP(라우터)를 통해 정의된다. 같은 AP를 사용하는 노드들은 Private Network를 공유한다. Private Network를 공유하는 노드들 끼리는 private ip로도 접근이 가능하다.
주의 : Private Network는 물리적 거리보다는 라우터를 통해서 직접 접근이 가능한가로 결정된다. ex) VPN - Internet 인터넷(Public Network)
외부와 연결되고자 하는 인트라넷들을 외부로 모두 연결한 네트워크
=> 게이트웨이 : 내부 네트워크와 외부 네트워크 간의 연결 통로이다.
게이트웨이가 private ip를 public ip로 변환해주어 외부 네트워크로 연결될 수 있다.
NAT = Network Address Transfer - ex) AWS VPC(Virtual Private Cloud) 네트워크 및 서버 구성 시 생성한 VPC 내부에 만든 나만의 서버(EC2)를 외부에 노출(인터넷에 연결)하고 싶은 경우, AWS IGW(Internet Gateway) 설정이 필수적이다.
인터넷과 인트라넷 차이 예시
ex) 실시간 채팅 방식
- 중앙 서버로 웹소켓 (중계 서버) LADDER
-> 인터넷 - 중앙 서버 없이 웹소켓 LAN. 라우터가 존재하기 때문에 가능함
-> LAN은 인트라넷의 일종
VPN(Virtual Private Network)
VPN은 가상의 인트라넷이다.
물리적으로 멀리 떨어져있는 네트워크에 연결된 노드로 변장하여, private network를 사용할 수 있다.
GW와 ISP의 차이
- GW : Private Network(Intranet)에서 외부로 나가고, 외부에서 들어오는 통로
- ISP(Internet Service Provider) : 인터넷 서비스를 제공하는 회사.
- 자체 회선과, 이메일, DNS 등의 서비스 제공*. 깔린 회선, 케이블 등을 모두 ISP라고 함.
ex) KT, SKT, LG
DNS
Domain Name Server 혹은 Domain Name System 을 의미한다.
웹 브라우저에서 URI 입력 시 DNS 테이블을 참조하여 private 주소로 변환 및 요청
IP 주소 <-> 도메인 네임 간 변환
DNS 테이블에는 도메인 네임 - 웹 서버 IP 매핑 정보가 저장됨
도메인 네임
- 도메인 네임은 www.naver.com 과 같은 별칭이다.
IP주소는 사람이 외우거나 읽기 어렵기 때문에 도메인 네임을 사용해 접속한다. - 모든 웹 서버는 IP주소를 기반으로 통신되어야 하기 때문에, 도메인 네임을 통해 들어온 요청은 다시 IP주소로 변환될 필요가 있다.
DNS Resolver
DNS는 어디에 저장되는가?
monolithic으로 저장된다면 관리가 매우 힘들어짐
- Root Server
관할하는 것은 '.'
값은 '.com', '.net', ...
어떤 TLD Server로 가야하는가 경유지 정보
- TLD Server (TOP LEVER DOMAIN)
관할하는 것은 '.com'
값은 '.naver.com', '.yahoo.com'
어떤 Name Server로 가야하는가 경유지 정보
- Name server
관할하는 것은 '.naver.com'
값은 'map.naver.com', 'blog.naver.com', ...
실제 목적지 정보(ip 주소)
Root Server -> TLD Server -> Name Server
주의 - 목적지에 해당하는 ip주소는 항상 name server에 있다.
-> 'naver.com'으로 요청하는 경우, '@.naver.com'으로
DNS Resolver 관리
- ICANN : Root Server 관리. 국제 기관
- Domain Registry : TLD Server 관리.(.com, .net 등) ICANN으로부터 위임받은 기관
ex) VeriSign - Domain Registrar : Name Server 관리
ex) 가비아, cafe24, GoDaddy, AWS Route53- Record : 다양한 타입의 Record 들을 갖고있다. 정말 다양하지만 우리가 자주 접할건 3가지
- A Record : DOMAIN NAME → IP SERVER (a.bootsrap.io → 1.0.0.1)
- CNAME : DOMAIN NAME → DOMAIN NAME (b.bootsrap.io → a.bootsrap.io)
- Record TTL(Time To Live) : DNS Resolver 가 얼마동안 캐싱하여있을지
- TTL 짧으면 → NS (Route53) 트래픽 증가
- TTL 길면 → NS (Route53) 트래픽 감소
- Record TTL(Time To Live) : DNS Resolver 가 얼마동안 캐싱하여있을지
- NS : DOMAIN NAME → NAME SERVERS (bootsrap.io → ns.a.net / ns.b.net / ns.c.net..)
- MX : MAIN DOMAIN NAME → MAIL SERVER (@c.bootsrap.io → mail.nv.server)
- Record : 다양한 타입의 Record 들을 갖고있다. 정말 다양하지만 우리가 자주 접할건 3가지
DNS 조회 순서
찾는 위치에 없으면, 다음 위치로 가서 조회를 시도한다.
- Browser DNS Cache
- Local DNS
/etc/hosts (캐시 아닌 파일) - ISP(Internet Service Provider) = DNS Resolver
DNS 조회 및 캐싱
DNS Resolver는 DNS Recursor라고도 한다.
DNS 조회를 순차적으로 재귀 수행하기 때문이다.
3-2. TLD Server
3-3. Name Server (Authoritative Server)
Non-Authoritative -> 캐시에 있는 값을 반환
Authoritative -> 실제 Name Server에 저장된 실시간 DNS 반환
도메인 사용 절차
- 구매
- 등록
도메인을 구매만 하고 등록하지 않으면 사용할 수 없다.
ex) 가비아에서 구매하는 경우
- 가비아에서 도메인 조회
- 가비아는 VeriSign으로부터 해당 도메인을 사용하는 사람이 있는지 확인, 경매 가격 제시
-> TLD 서버에서 해당 도메인을 key로 하여 value(Name Server 값)가 존재하는지 확인한다. - 가비아가 경매 가격을 사용자에게 반환
- 사용자가 구매 를 결정
-> 가비아가 TLD 서버에서 해당 도메인을 Key로 하여 value에 현재 가비아의 Name Server를 넣어둠.
-> 가비아가 사용자가 등록하는 도메인과 IP주소를 가비아의 Name Server에 등록 한다.
예시에서는 같은 Domain Registrar로부터 도메인 구매와 등록을 모두 진행했지만, 도메인 등록과 구매를 서로 다른 Domain Registrar에서 하더라도 무관하다.
예를 들어 같은 도메인에 대해서 Cafe24가 AWS Route 53보다 저렴한 경매가를 제시하고, 모든 도메인 등록은 AWS Route 53에서 하기로 했다고 가정하자.
Cafe 24에서 도메인을 구매하고, AWS Route 53에서 등록할 수 있다.
'ASAC' 카테고리의 다른 글
[ASAC 06] WS와 WAS (0) | 2024.08.27 |
---|---|
[ASAC 06] SEO, 웹 페이지 성능 Core Web Vital (1) | 2024.08.27 |
[ASAC 06] MSA와 API Gateway (0) | 2024.08.27 |
[ASAC 06] GraphQL (0) | 2024.08.27 |
[ASAC 06] REST API (0) | 2024.08.27 |