[모든 개발자를 위한 HTTP 웹 기본 지식] 01. 인터넷 네트워크 - PORT, DNS

Yewon Kim·2022년 7월 31일
0
post-thumbnail

🔊본 포스팅은 김영한님의 모든 개발자를 위한 HTTP 웹 기본 지식 Inflearn 강의를 수강하고 정리한 글입니다.

4. PORT

1) 한 번에 둘 이상 연결해야 하면?

현재 클라이언트 PC에서 게임, 화상통화, 웹 브라우저 요청도 하고 있는 상황을 가정해보자.
즉, 클라이언트 PC가 여러 개의 서버와 통신해야 하는 상황이다.

- 서버가 클라이언트 PC로 패킷을 보내려면 클라이언트 IP로 패킷을 보내야 한다.
- 하지만 IP만 사용하면, 클라이언트 입장에서 받은 패킷이 게임, 화상통화, 웹 브라우저 요청 중 어떤 프로그램으로 온 패킷인지 알 수 없는 문제가 있다.
- 그래서 프로그램을 구분하기 위해 PORT를 사용한다.

2) TCP/IP 패킷 정보

TCP/IP 패킷을 보면 출발지 IP, 목적지 IP와 함께 출발지 PORT, 목적지 PORT가 포함된 것을 알 수 있다.

  • IP → 목적지 서버를 찾는 용도
  • PORT → 서버 내부에서 돌아가는 애플리케이션을 구분하는 용도

3) PORT - 같은 IP 내에서 프로세스 구분

4) PORT

  • 0 ~ 65525: 할당 가능
  • 0 ~ 1023: 잘 알려진 포트, 사용하지 않는 것이 좋음
FTP → 20, 21
TELNET → 23
HTTP → 80
HTTPS → 443

5. DNS

1) IP는 기억하기 어렵다.

2) IP는 변경될 수 있다.

3) DNS(Domain Name System)

  • 도메인 명을 IP 주소로 변환시켜주는 것이다.(전화번호부 역할)

4) DNS 사용

  • DNS 서버에 도메인 명에 대한 IP 주소를 등록해둔다.
① 클라이언트가 DNS 서버에 도메인 명에 대한 IP를 요청한다.
② DNS 서버는 해당 도메인 명에 대한 IP 주소를 클라이언트에 전달한다.
③ 클라이언트는 해당 IP 주소로 서버에 접근한다.
→ DNS를 사용하면 IP가 기억하기 어렵고, 변경될 수 있는 문제를 해결해준다.

0개의 댓글