웹 서버의 IP 주소를 DNS 서버에 조회
1%의 네트워크 원리 (03) - 웹 브라우저가 메시지를 생성 2
02 웹 서버의 IP 주소를 DNS 서버에 조회
1 IP 주소의 기본
브라우저
- 메시지를 네트워크에 송출하는 기술이 없음
- HTTP 메시지를 OS에 의뢰해 웹 서버로 전송
라우터
- 패킷을 중계하는 장치의 일종
허브
- 패킷을 중계하는 장치의 일종
- 리피터 허브, 스위칭 허브
서브넷
- 작은 네트워크
- 허브에 몇 대의 PC가 접속된 것
서브넷은 서브넷으로 구성됨
- 라우터
- 라우터
- 허브
- 클라이언트
- 클라이언트
- 서브넷
- 서브넷
- 허브
- 서브넷
- 라우터
- 서브넷
IP 주소
- 32비트의 디지털 데이터
- 8비트 + 8비트 + 8비트 + 8비트 + 넷마스크
- 네트워크 번호(OO동) + 호스트 번호(OO번지)
넷마스크
- 1: 네트워크 번호
- 0: 호스트 번호
- 호스트 번호가 모두
0
(0): 서브넷 자체 - 호스트 번후가 모두
1
(255): 서브넷에 있는 기기 전체에 패킷을 보내는 브로드캐스트
1
2
10.11.12.13/255.255.255.0
10.11.12.13/24
- 위와 아래는 동일
- 24는 네트워크 번호의 비트 수를 의미
2 도메인명과 IP 주소를 구분해서 사용하는 이유
도메인명과 IP 주소
- TCP/IP의 네트워크는 IP 주소로 통신 상대 지정
- URL에 IP 주소를 써도 올바르게 작동
- 사람은 이름을 사용하고 라우터는 IP 주소를 사용
- IP 주소는 총 32비트를 사용하지만 도메인명은 수십~255바이트를 사용
DNS
- Domain Name System
- 이름과 IP주소를 찾음
3 Socket 라이브러리가 IP 주소를 찾는 기능을 제공
DNS 클라이언트
- DNS 리졸버 혹은 리졸버라 불림
- Socket 라이브러리 내 존재
- DNS 서버로 IP 주소를 조회
DNS 서버
- 해당 요청을 응답
- 네임 리졸루션
Socket 라이브러리
- OS에 포함된 네트워크 기능을 애플리케이션에서 호출하기 위한 것들을 모아둠
4 리졸버를 이용해 DNS 서버 조회
1
메모리_영역 = gethostbyname(도메인명);
5 리졸버 내부의 작동
- 네트워크 애플리케이션
- 이 경우 브라우저
- 리졸버
- 프로토콜 스택
- LAN 어댑터
- DNS 서버
- DNS 서버의 IP 주소는 TCP/IP 설정 항목으로 컴퓨터에 미리 설정됨
참고
성공과 실패를 결정하는 1%의 네트워크 원리