a. 대칭키
b. 비대칭키(공개키/개인키)
c. 무결성
http://는 HTTP를 사용한다는 의미이다.요청(Request): 요청 정보(메서드, URL, 버전) + 헤더(데이터 형식 같은 메타데이터) + 바디(실제 내용)
응답(Response): 응답 정보(상태코드, 문구, 버전) + 헤더(데이터 형식, 크기 등) + 바디(실제 내용)
https://가 붙는다.“암호화된 연결”과 “사이트 자체의 신뢰”는 별개일 수 있다.
문제가 있는 사이트도 CA 인증서를 받으면 HTTPS로 통신할 수 있고, 사이트 안에서 다운로드나 별도의 행위를 하는 과정에서 공격이 일어날 수 있다.
정의: DNS는 도메인을 IP로 또는 그 반대로 바꿔주는 역할을 하는 시스템이고, DNS 프로토콜은 그 과정에서 메시지를 주고받는 규칙이다.
포트 번호:
구조: DNS는 질의(Query) – 응답(Response) 구조로 메시지를 교환한다.
DNS는 전 세계에 거대한 트리 구조로 분산된 계층 구조다.
한 곳에 많은 정보가 있으면 과부하가 걸릴 수 있어 계층을 나눠서 관리한다.
루트 네임 서버(Root Name Server): DNS 계층 구조의 최상단에 위치하며, TLD 네임 서버의 주소를 안내하는 역할
TLD(최상위 도메인) 서버: .com, .net, .kr 등 도메인의 마지막 부분을 관리하며, 해당 도메인에 대한 책임 네임 서버 정보 제공
책임 네임 서버(Authoritative Name Server): 특정 도메인에 대해 최종 권한을 가진 서버로, 실제 IP 주소를 확정하여 응답
로컬 네임 서버(Local DNS): 사용자가 가장 먼저 접속하는 서버(통신사 서버 등)로, 이전 질의 결과를 캐싱하여 빠른 응답을 돕는다.
브라우저에 www.google을 입력하면
우선 컴퓨터 안에 IP가 있는지 확인한다.
로컬 DNS 서버에 질의를 한다(보통 통신사 DNS).
로컬 DNS 서버가 루트 네임 서버 → TLD 네임 서버 → 책임 네임 서버 순으로 질의를 해서 IP를 찾는다.
로컬 DNS 서버가 결과를 브라우저에 전달한다.
캐시는 DNS가 같은 이름을 반복 조회하는 일이 많아서 결과를 잠깐 저장(캐싱)해 두고 다음엔 더 빨리 답하게 만드는 것이다.
캐시는 보통 로컬 DNS에 가장 크게 존재하고, 환경에 따라 브라우저나 OS에도 저장될 수 있다.
TTL(Time To Live)은 DNS 레코드가 캐시에 얼마나 남아도 되는지를 나타내는 값이다.
| 구분 | 로컬 DNS (Local DNS) | 공개 DNS (Public DNS) |
|---|---|---|
| 운영 주체 | 사용자가 가입한 통신사(ISP) (예: KT, SKB, LG U+) | 글로벌 IT 기업 (예: Google, Cloudflare) |
| 설정 방식 | 인터넷 연결 시 자동으로 할당되어 편리함 | 사용자가 PC나 공유기에서 수동으로 주소 입력 필요 |
| 주요 목적 | 해당 통신망 사용자의 빠른 질의 응답 및 트래픽 관리 | 속도 향상, 보안 강화, 개인정보 보호 |
| 개인정보 | 통신사가 사용자의 방문 기록을 관리할 수 있음 | 업체에 따라 No-Log 정책(기록 미저장)을 제공하기도 함 |
| 보안성 | 기본적인 수준의 보안 제공 | DNSSEC 등 최신 보안 기술 지원 및 변조 방지에 강력함 |
| 대표 예시 | 각 통신사별 기본 할당 서버 | Google (8.8.8.8), Cloudflare (1.1.1.1) |