“웹 브라우저로 https://www.google.com 에 접속하면 어떤 일이 일어나나요?”
이 질문은 면접에서도 자주 등장하는 대표적인 질문이다.
그 이유는 이 질문 하나만으로도 지원자가 웹, 네트워크, 브라우저, 서버, HTTP에 대해
얼마나 연결해서 이해하고 있는지를 확인할 수 있기 때문이다.
겉으로 보기에는 단순히 주소를 입력하고 화면이 뜨는 일처럼 보이지만,
실제로는 그 뒤에서 여러 단계의 과정이 순서대로 이루어진다.
브라우저로 웹사이트에 접속하는 과정

먼저 브라우저가 어떤 서버에 접속하려면 그 서버의 위치를 알아야 한다.
네트워크에서 컴퓨터나 서버를 식별할 때 실제로 사용되는 것은 IP 주소이다.
IP 주소는 숫자로 이루어져 있기 때문에 사람이 기억하고 사용하기에는 불편하다.
그래서 우리는 google.com 같은 도메인 이름을 사용한다.
하지만 도메인 이름만으로는 실제 서버에 바로 도달할 수 없다.
네트워크 장비들은 도메인 이름이 아니라 IP 주소를 기준으로 목적지를 찾기 때문이다.
이때 필요한 것이 DNS(Domain Name System)이다.
DNS는 사람이 기억하기 쉬운 도메인 이름을 실제 통신에 필요한 IP 주소로 바꿔주는 역할을 한다.
IP 주소를 알아낸 뒤에는, 그 주소를 향해 실제 요청이 이동해야 한다.
이 과정에서 라우터 같은 네트워크 장비가 중요한 역할을 한다.
(여기서 라우터는 네트워크 상에서 데이터가 어느 방향으로 가야 하는지 판단하고 전달해주는 장비다. )
클라이언트가 보낸 요청은 여러 라우터 구간을 지나 목적지 서버까지 전달된다.
즉, 요청이 서버에 도달하기까지는 단순히 한 번에 가는 것이 아니라
네트워크 상의 여러 경로를 따라 이동하게 된다.
이후 요청이 구글의 웹 서버에 도착하면, 서버는 요청 내용을 해석하고 그에 맞는 응답을 준비한다.
사용자가 웹페이지 접속을 요청했다면 서버는 그에 해당하는 HTML 문서나 기타 필요한 자원을 응답으로 돌려준다.
그리고 이 응답 역시 네트워크를 통해 다시 클라이언트에게 전달된다.
전달된 응답은 클라이언트의 화면에 렌더링하여 사용자가 볼 수 있는 화면으로 만들어낸다.
서버와 통신할 때는 IP 주소만이 아니라 포트 번호도 함께 필요하다
서버를 찾기 위해 IP 주소가 필요하다는 것을 이해했다면,
그 다음에는 포트(Port)라는 개념도 함께 알아야 한다.
많은 사람들이 “IP 주소만 알면 통신할 수 있는 것 아닌가?”라고 생각할 수 있지만,
실제로는 그것만으로는 충분하지 않다.
그 이유는 하나의 물리적인 서버 안에서 여러 애플리케이션이나 여러 서비스가 동시에 실행될 수 있기 때문이다.
예를 들어 하나의 서버 컴퓨터가 있다고 해도,
그 안에서는 웹 애플리케이션, 데이터베이스, SSH 서버, 메일 서버 등 여러 프로그램이 함께 동작할 수 있다.
이때 네트워크 요청이 들어왔을 때 “이 요청을 어떤 프로그램이 처리해야 하는지”를 구분해야 한다.
바로 이 역할을 하는 것이 포트 번호다.
즉, IP 주소가 “어느 서버로 갈 것인가”를 결정한다면,
포트 번호는 “그 서버 안의 어떤 프로그램과 통신할 것인가”를 결정한다고 볼 수 있다.
포트 번호는 0부터 65535까지 존재하며, 용도에 따라 대략적으로 구분된다.
일반적으로 0번부터 1023번까지는 잘 알려진 서비스들이 사용하는 Well Known Port 영역이다.
예를 들어 HTTP는 보통 80번, HTTPS는 443번 포트를 사용한다.
1024번부터 49151번까지는 등록된 포트 영역으로,
다양한 애플리케이션이 사용할 수 있다.
그리고 49152번부터 65535번까지는 동적 포트 영역으로,
클라이언트가 서버에 요청을 보낼 때 임시로 사용하는 경우가 많다.
'공부 기록 > 이것이 백엔드 개발이다 With Java' 카테고리의 다른 글
| EP6. 스프링부트로 웹 애플리케이션을 시작해보기 (0) | 2026.03.23 |
|---|---|
| EP5. 서버와 서버, 서버와 클라이언트 (0) | 2026.03.20 |
| EP3. 서버와 클라이언트의 개념 (0) | 2026.03.16 |
| EP2. 백엔드 개발이란? (0) | 2026.03.11 |
| EP1. 백엔드 공부를 시작하며 가장 먼저 이해해야 할 것 (0) | 2026.03.11 |