Web 기초: 인터넷 주소와 웹의 기본 개념
1. DNS (Domain Name System)
-
DNS란?
- 사람이 이해할 수 있는 도메인 이름을 컴퓨터가 이해할 수 있는 IP 주소로 변환하는 시스템
- 예:
www.google.com → 142.250.190.14
-
DNS가 필요한 이유
- IP 주소는 기억하기 어렵고 가독성이 떨어짐
- IP 주소가 변경될 경우, DNS를 이용하면 도메인만 유지하면 됨
- 전 세계의 인터넷 사용자들이 편리하게 웹사이트에 접근할 수 있음
DNS 동작 과정
- 사용자가
www.example.com 입력
- 브라우저가 로컬 DNS 캐시 확인 (기존 요청이 있다면 캐시된 IP 주소 사용)
- 없을 경우 DNS 서버에 요청 (ISP 제공 DNS → 루트 네임서버 → 도메인 네임서버)
- 해당 도메인의 IP 주소를 반환하여 웹사이트 접속
☞ 결과적으로, 사용자는 도메인만 기억하면 되고, DNS가 IP 주소를 자동으로 찾아줌
2. URI, URL, URN의 차이
-
URI (Uniform Resource Identifier)
- 인터넷 상의 자원을 식별하는 고유 식별자
- URI에는 URL과 URN이 포함됨
-
URL (Uniform Resource Locator)
- 자원의 위치(Location) 를 나타내는 주소
- 예:
https://www.example.com/index.html
-
URN (Uniform Resource Name)
- 자원의 이름(Name) 을 나타냄 (위치와 관계없이 고유한 식별자)
- 예:
urn:isbn:0451450523 (책 ISBN 번호)
☞ 현대 웹에서는 대부분 URL을 URI와 동일한 의미로 사용
3. URL 구조
URL 기본 형식
scheme://[user:password@]host[:port][/path][?query][#fragment]
- scheme (프로토콜):
http, https, ftp 등
- host (호스트):
www.example.com, 192.168.1.1 등
- port (포트 번호, 선택적):
80 (HTTP), 443 (HTTPS) 등
- path (경로):
/products/macbook
- query (쿼리 스트링, 선택적):
?key=value&sort=desc
- fragment (북마크, 선택적):
#section2
☞ 예제:
https://www.google.com:443/search?q=스파르타코딩클럽
4. 브라우저에 URL을 입력하면 어떤 일이 일어날까?
- DNS 조회: 도메인에 해당하는 IP 주소를 찾음
- TCP 연결: 3-Way Handshake를 통해 서버와 연결
- HTTP 요청 전송: 브라우저가 서버에 웹페이지 요청
- 서버의 HTTP 응답: 서버가 HTML, CSS, JS 등 반환
- 렌더링 및 화면 출력: 브라우저가 페이지를 구성하여 화면에 표시
☞ 결과적으로, 사용자는 주소 입력 후 자동으로 웹페이지를 볼 수 있음
정리
- DNS: 사람이 이해할 수 있는 도메인을 IP 주소로 변환
- URI: 인터넷 자원의 고유 식별자 (URL, URN 포함)
- URL: 웹에서 특정 자원의 위치를 나타내는 주소
- 웹 요청 흐름: URL 입력 → DNS 조회 → HTTP 요청 → 서버 응답 → 웹페이지 표시
☞ 다음 강의에서는 HTTP와 웹 애플리케이션 개념을 배울 예정!