codingstairs
노트에듀라이프연락
⌕검색⌘K
koen

Navigation

  • Intro
  • Blog
  • Life

연락하기

로그인 없이도 보낼 수 있어요. 답변이 필요하면 이메일을 함께 적어 주세요.

  • 익명 폼으로 의견 남기기 →
  • ✉ warragon112@gmail.com
  • 카카오톡 오픈채팅 ↗

© 2026 codingstairs

  • 노트
  • 에듀
  • 검색
  • 라이프
  • 연락
  • 약관
  • RSS
  • GitHub
노트›web-fundamentals

인터넷은 어떻게 동작하는가

2026-04-28 게시· 2026-05-18 갱신·0회 조회

인터넷은 어떻게 동작하는가

"브라우저에 google.com 을 치면 무슨 일이 일어나는가" 는 면접 단골 질문. 그 짧은 한 줄 안에 OSI 일곱 계층 · IP · DNS · TCP · TLS · HTTP 가 차례로 등장합니다. 이 글은 입문자가 큰 그림을 한 번 잡을 수 있도록 각 계층과 핵심 프로토콜.

1. 인터넷에 대한 이야기

1969 년 미국 ARPANET 의 4 개 노드 연결에서 시작. 1974 년 Vint Cerf 와 Bob Kahn 이 TCP / IP 를 제안했고, 1983 년 ARPANET 이 TCP / IP 로 전환된 날이 인터넷의 공식 생일로 자주 인용. 1989 년 Tim Berners-Lee 의 World Wide Web 제안으로 웹이 추가. 1995 년 미국이 백본 상업화를 허용한 뒤 폭발적으로 퍼짐.

2. OSI 7 계층 vs TCP / IP 4 계층

OSI 모델은 1984 년 ISO 가 정한 추상 모델. TCP / IP 는 실제로 구현된 모델로 더 단순:

OSI TCP / IP 예
7. Application Application HTTP · DNS · SMTP · SSH
6. Presentation (포함) TLS · 인코딩
5. Session (포함) 세션 관리
4. Transport Transport TCP · UDP · QUIC
3. Network Internet IP · ICMP · 라우팅
2. Data Link Link 이더넷 · Wi-Fi
1. Physical (Link 안) 케이블 · 광섬유 · 전파

각 계층은 위 계층에 서비스를 제공하고 아래 계층의 디테일을 숨김.

3. IP 주소

종류 형식 주소 공간
IPv4 192.168.1.1 (32비트) 약 43억 개
IPv6 2001:0db8:85a3::8a2e:0370:7334 (128비트) 사실상 무한

IPv4 는 1980 년대 정의됐고 주소 부족이 1990 년대부터 예고되어 NAT (공유기) 로 우회. IPv6 는 1998 년 RFC 2460 으로 표준화됐고 점진적으로 보급 중.

서브넷은 192.168.1.0/24 처럼. /24 는 앞 24 비트가 네트워크 식별, 뒤 8 비트가 호스트 식별. 이 서브넷 안에 256 개 주소.

특별한 주소:

  • 127.0.0.1 (IPv4) · ::1 (IPv6) — 루프백. 자기 자신.
  • 192.168.x.x · 10.x.x.x · 172.16.x.x ~ 172.31.x.x — 사설 IP (집 · 사무실 내부).
  • 0.0.0.0 — 전체 인터페이스. 서버를 이 주소에 바인드하면 모든 NIC 에서 받음.

4. DNS

Domain Name System 의 줄임말. Paul Mockapetris 가 1983 년 RFC 882 / 883 으로 처음 정의했고, 1987 년 RFC 1034 / 1035 가 현재 SSOT 의 기초. 사람이 외우기 쉬운 도메인을 IP 로:

www.example.com 을 조회한다고 할 때:
1. 브라우저 캐시 확인
2. OS 의 hosts 파일 · 캐시
3. ISP 또는 공용 (8.8.8.8 · 1.1.1.1) DNS 리졸버
4. 루트 서버 → .com TLD 서버 → example.com 권한 서버 의 순서로 재귀 질의
5. 응답 IP 를 받아 캐시

자주 만나는 레코드:

레코드 의미
A 도메인 → IPv4
AAAA 도메인 → IPv6
CNAME 도메인 → 다른 도메인 (별칭)
MX 메일 서버 지정
TXT 임의 텍스트 (SPF · DKIM · 도메인 검증)
NS 권한 네임서버
SOA 영역 관리 정보
PTR IP → 도메인 (역방향)

TTL (Time To Live) 은 캐시 유지 시간. 도메인 변경 직전에 TTL 을 짧게 줄여 두는 습관.

5. TCP 와 UDP

항목 TCP UDP
연결 3-way handshake (SYN → SYN-ACK → ACK) 없음
신뢰성 순서 · 재전송 보장 없음
흐름 제어 있음 (window) 없음
오버헤드 큼 작음
용도 HTTP/1·2 · SSH · 메일 · FTP DNS · 게임 · 실시간 음성 / 영상 · QUIC

TCP 의 3-way handshake:

client → server : SYN
client ← server : SYN-ACK
client → server : ACK
(이후 데이터 송수신)

QUIC (UDP 기반, HTTP/3 의 전송) 는 TCP 와 TLS 의 handshake 를 합쳐 한 번에 끝냄.

6. TLS

Transport Layer Security 의 줄임말. 1995 년 Netscape 의 SSL 2.0 에서 시작해 1999 년 IETF 가 TLS 1.0 (RFC 2246) 으로 표준화. 현재는 2018 년의 TLS 1.3 (RFC 8446) 이 권장.

대략의 과정:

  1. 클라이언트가 지원 가능한 암호 묶음 · 확장을 보냄 (ClientHello).
  2. 서버가 인증서와 선택한 암호를 보냄 (ServerHello · Certificate).
  3. 클라이언트가 인증서 체인을 검증 (CA 가 발급했는가, 만료되지 않았는가, 도메인이 일치하는가).
  4. 키 교환으로 세션 키를 만들고, 이후 통신은 그 키로 암호화.

TLS 1.3 은 이 과정을 1-RTT (재방문 시 0-RTT) 로 줄임.

7. 한 줄 요청의 풀스택 흐름

브라우저에 https://example.com 을 입력했을 때:

  1. 브라우저가 URL 파싱.
  2. DNS 로 example.com 의 IP 조회.
  3. TCP 또는 QUIC 연결.
  4. TLS 핸드셰이크.
  5. HTTP 요청 송신.
  6. 서버가 응답.
  7. 브라우저가 HTML 파싱 → CSS · JS 추가 자원 요청 → 화면 그리기.

8. 다른 길

  • DNS over HTTPS (DoH) · DNS over TLS (DoT) — DNS 질의 자체를 암호화.
  • HTTP/3 (QUIC) — TCP 대체.
  • WireGuard · Tailscale — 모던 VPN.
  • IPFS — 콘텐츠 주소 기반의 P2P 분산 저장.

9. 자주 쓰는 모양

기본 진단 도구:

# 연결성
ping example.com
ping -c 4 example.com   # 4 번만 (mac · Linux). Windows: ping -n 4

# 경로 추적
# Mac · Linux
traceroute example.com
# Windows
tracert example.com

# DNS 조회
# Mac · Linux 권장
dig example.com
dig example.com MX +short
# Windows 기본
nslookup example.com
nslookup -type=MX example.com

# 포트 듣기 확인
# Mac · Linux
lsof -i :8080
ss -tlnp | grep 8080
# Windows
netstat -ano | findstr :8080

브라우저 DevTools 의 Network 탭이 실제 요청 흐름을 직관적으로 보여 줌.

10. 자주 걸리는 자리

DNS 캐시 — 도메인 변경 후 일부 사용자가 한참 옛 IP 를 보는 이유. TTL 만큼 기다리거나 OS 캐시 비우기.

  • macOS — sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
  • Windows — ipconfig /flushdns

NAT 안의 사설 IP 로는 외부에서 접속 불가 — 포트 포워딩 또는 프록시 (ngrok · Cloudflare Tunnel) 필요.

IPv6 가 켜진 환경에서 IPv4 만 바인드한 서버에 접근이 안 되는 경우 — 호스트를 :: 로 바인드.

로컬 호스트 이름 — localhost 와 127.0.0.1 은 보통 같지만 hosts 파일에서 다르게 매핑됐을 수 있음.

HTTPS 인증서 만료 · 도메인 불일치 — 브라우저가 빨간 경고. Let's Encrypt 의 자동 갱신을 까먹은 경우가 흔함.

하고픈 말

인터넷은 OSI 7 계층의 추상 위에 IP · TCP · DNS · TLS · HTTP 의 구체 프로토콜이 쌓인 구조. 하나의 URL 입력 뒤에 7 단계의 작업이 차례로. 운영자가 직접 다루는 건 보통 DNS 레코드 · TLS 인증서 · 포트 바인딩 셋. 나머지는 표준 위에 서 있어 자연스럽게 동작합니다.

Next

  • browser-devtools
  • (web-fundamentals 끝)

RFC 1034 / 1035 DNS · RFC 791 IPv4 · RFC 8200 IPv6 · RFC 8446 TLS 1.3 · Brief History of the Internet (Internet Society) · How DNS Works (howdns.works) · High Performance Browser Networking · Cloudflare Radar · DNSChecker 를 참고합니다.

web-fundamentals 카테고리의 다른 글

카테고리 전체 보기 →
  • 브라우저 DevTools — 디버깅의 첫 도구
  • URL 의 해부 — 주소창의 한 줄 읽기
  • HTTP 와 REST — 클라이언트와 서버의 약속
  • JavaScript 기초 — 브라우저의 동적 언어
  • CSS — 모양과 배치
  • HTML — 웹 페이지의 뼈대