서버 IP와 도메인의 관계 설명

서버 IP와 도메인의 관계 설명

인터넷을 사용할 때 우리는 “www.naver.com“, “www.google.com” 같은 주소를 입력합니다. 하지만 컴퓨터는 이런 문자로 된 주소를 이해하지 못합니다. 컴퓨터가 실제로 이해하는 것은 “121.125.237.12” 같은 숫자로 된 IP 주소입니다. 그렇다면 우리가 입력한 도메인이 어떻게 IP 주소로 바뀌어 서버에 연결되는 걸까요? 이번 글에서는 IP와 도메인의 관계를 자세히 알아보겠습니다.

IP 주소란 무엇인가?

IP 주소(Internet Protocol Address)는 인터넷에 연결된 모든 기기에 부여되는 고유한 숫자 주소입니다. 마치 우리 집 주소처럼, 인터넷 상에서 특정 컴퓨터나 서버를 찾아가기 위한 위치 정보입니다.

IP 주소를 집 주소에 비유하면 쉽게 이해할 수 있습니다. “서울특별시 강남구 테헤란로 123″이라는 주소가 있다면, 택배 기사는 이 주소를 보고 정확한 위치를 찾아갈 수 있습니다. IP 주소도 마찬가지로 “192.168.0.1”처럼 숫자로 이루어져 있으며, 이 주소를 통해 인터넷 상의 특정 서버나 컴퓨터를 정확히 찾아갈 수 있습니다.

현재 가장 많이 사용되는 IPv4 주소는 “192.168.0.1”처럼 점으로 구분된 네 개의 숫자로 구성됩니다. 각 숫자는 0부터 255까지의 값을 가질 수 있습니다. 하지만 인터넷 사용자가 급격히 늘어나면서 IPv4 주소가 부족해졌고, 최근에는 더 많은 주소를 만들 수 있는 IPv6도 사용되고 있습니다.

네이버의 실제 IP 주소 중 하나는 “223.130.200.107”입니다. 브라우저 주소창에 이 숫자를 직접 입력해도 네이버에 접속할 수 있습니다. 하지만 우리는 보통 이런 숫자 대신 “www.naver.com”이라는 쉬운 이름을 사용합니다. 왜 그럴까요?

도메인이 필요한 이유

숫자로 된 IP 주소는 사람이 기억하기 어렵습니다. 자주 가는 웹사이트가 10개만 되어도 그 모든 IP 주소를 외우는 것은 불가능에 가깝습니다. “223.130.200.107”과 “www.naver.com” 중 어느 것이 기억하기 쉬운가요? 당연히 후자입니다.

도메인(Domain)은 바로 이런 불편함을 해결하기 위해 탄생했습니다. 도메인은 IP 주소를 사람이 이해하기 쉬운 문자 형태로 변환한 것입니다. 마치 전화번호부에 “엄마: 010-1234-5678″처럼 숫자 대신 이름을 저장하는 것과 같습니다.

도메인은 계층 구조로 되어 있습니다. “www.naver.com”을 예로 들면, “com”은 최상위 도메인(TLD, Top-Level Domain), “naver”는 2차 도메인(SLD, Second-Level Domain), “www”는 서브도메인(Subdomain)입니다. 오른쪽에서 왼쪽으로 갈수록 더 구체적인 위치를 나타냅니다.

최상위 도메인에는 여러 종류가 있습니다. “.com”은 상업용, “.org”는 비영리단체, “.edu”는 교육기관, “.gov”는 정부기관을 의미합니다. 또한 “.kr”은 한국, “.jp”는 일본, “.us”는 미국처럼 국가를 나타내는 도메인도 있습니다.

DNS: 도메인과 IP를 연결하는 전화번호부

그렇다면 우리가 “www.naver.com”을 입력했을 때, 컴퓨터는 어떻게 실제 IP 주소 “223.130.200.107”을 알아낼까요? 여기서 DNS(Domain Name System)가 등장합니다.

DNS는 인터넷의 전화번호부라고 할 수 있습니다. 전화번호부에서 사람 이름을 찾으면 전화번호가 나오는 것처럼, DNS는 도메인 이름을 입력하면 그에 해당하는 IP 주소를 알려줍니다.

DNS 조회 과정을 단계별로 살펴보겠습니다.

여러분이 브라우저에 “www.naver.com”을 입력하고 엔터를 누르면, 컴퓨터는 먼저 자신의 DNS 캐시를 확인합니다. 최근에 방문한 적이 있다면 IP 주소가 캐시에 저장되어 있을 수 있습니다. 캐시에 없다면 다음 단계로 넘어갑니다.

컴퓨터는 ISP(인터넷 서비스 제공업체)가 운영하는 DNS 서버에 질의합니다. “www.naver.com의 IP 주소가 뭔가요?”라고 묻는 것이죠. 이 DNS 서버도 모르면, 루트 DNS 서버에 물어봅니다.

루트 DNS 서버는 “.com”을 관리하는 DNS 서버의 주소를 알려줍니다. 그 서버에 다시 물어보면 “naver.com”을 관리하는 네임서버의 주소를 알려줍니다. 최종적으로 네이버의 네임서버가 “www.naver.com”의 실제 IP 주소를 응답합니다.

이 모든 과정이 불과 몇십 밀리초 안에 일어납니다. 우리는 기다림 없이 즉시 웹사이트에 접속하는 것처럼 느끼지만, 뒤에서는 여러 DNS 서버들이 빠르게 협력하고 있는 것입니다.

도메인 등록과 연결 과정

웹사이트를 만들려면 도메인을 등록하고 서버 IP와 연결해야 합니다. 이 과정을 자세히 살펴보겠습니다.

먼저 도메인 구매를 합니다. 가비아, 후이즈, GoDaddy 같은 도메인 등록 대행업체(Registrar)에서 원하는 도메인을 검색하고 구매합니다. 이미 다른 사람이 사용 중인 도메인은 구매할 수 없습니다. 도메인은 보통 1년 단위로 임대하며, 매년 갱신 비용을 지불해야 합니다.

다음으로 서버 준비입니다. AWS, Google Cloud, 카페24 같은 곳에서 서버를 구축하거나 임대합니다. 서버가 준비되면 고정 IP 주소를 받게 됩니다. 예를 들어 “123.456.789.012”라는 IP를 받았다고 가정해봅시다.

이제 가장 중요한 DNS 설정 단계입니다. 도메인 관리 페이지에 들어가서 DNS 레코드를 설정합니다. 가장 기본적인 것이 A 레코드(Address Record)입니다. “www.mysite.com → 123.456.789.012″처럼 도메인과 IP를 연결하는 설정입니다.

DNS 설정이 완료되면 전 세계 DNS 서버에 이 정보가 전파됩니다. 이 과정을 **DNS 전파(DNS Propagation)**라고 하며, 보통 몇 시간에서 최대 48시간 정도 걸립니다. 이 기간 동안 어떤 사람은 새 IP로 접속되고, 어떤 사람은 아직 이전 IP로 접속될 수 있습니다.

DNS 전파가 완료되면, 이제 전 세계 누구나 여러분의 도메인을 입력해서 여러분의 서버에 접속할 수 있습니다.

다양한 DNS 레코드 타입

A 레코드 외에도 여러 종류의 DNS 레코드가 있습니다.

CNAME 레코드는 도메인을 다른 도메인으로 연결합니다. 예를 들어 “blog.mysite.com”을 “mysite.github.io”로 연결할 수 있습니다. 서브도메인을 외부 서비스에 연결할 때 자주 사용합니다.

MX 레코드는 이메일 서버를 지정합니다. “info@mysite.com“으로 오는 이메일을 어느 서버가 처리할지 정하는 것이죠. Gmail이나 네이버 같은 외부 이메일 서비스를 사용할 때 MX 레코드를 설정합니다.

TXT 레코드는 텍스트 정보를 저장합니다. 주로 도메인 소유권 인증이나 이메일 보안 설정(SPF, DKIM)에 사용됩니다.

하나의 도메인, 여러 개의 IP

대형 웹사이트는 하나의 도메인에 여러 개의 IP 주소를 연결하기도 합니다. 예를 들어 네이버는 여러 대의 서버를 운영하며, 사용자의 요청을 분산시켜 처리합니다.

여러분이 “www.naver.com”에 접속할 때마다 다른 IP로 연결될 수 있습니다. DNS가 여러 IP 중 하나를 랜덤으로 또는 부하 상황에 따라 선택해서 알려주는 것이죠. 이를 DNS 로드 밸런싱이라고 합니다.

반대로 하나의 IP에 여러 도메인을 연결할 수도 있습니다. 공유 호스팅을 사용하면 여러 웹사이트가 하나의 서버(하나의 IP)를 공유합니다. 서버는 HTTP 요청의 Host 헤더를 보고 어느 웹사이트를 보여줄지 판단합니다.

실무에서의 중요성

도메인과 IP의 관계를 이해하면 여러 상황에서 문제를 해결할 수 있습니다.

웹사이트가 갑자기 안 열릴 때 IP로 직접 접속해보면 서버 문제인지 DNS 문제인지 알 수 있습니다. IP로는 접속되는데 도메인으로는 안 된다면 DNS 설정이 잘못된 것입니다.

서버를 이전할 때도 DNS를 잘 관리해야 합니다. 먼저 새 서버에 웹사이트를 완전히 구축하고, DNS의 TTL(Time To Live)을 짧게 설정한 후, A 레코드의 IP를 새 서버 IP로 변경하면 다운타임을 최소화할 수 있습니다.

IP 주소와 도메인은 인터넷의 핵심 인프라입니다. 겉으로는 간단해 보이지만, 그 뒤에는 정교한 시스템이 작동하고 있습니다. 이를 이해하면 인터넷이 어떻게 작동하는지 더 깊이 알 수 있을 것입니다.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *