자신만의 웹사이트를 열기 위해서는 도메인이라는 것이 필요합니다.
도메인이란, 간단히 말해, 전세계인 이용하는 네트워크상의 주소인데요.
튜토리얼을 따라 클릭 몇 번으로 도메인을 설정할 수도 있기는 합니다.
하지만, 도메인에 대해 이해하고 간다면, 이후의 여정이 훨씬 수월해질 것 입니다.
이제 도메인에 대해서 알아보도록 하겠습니다.
1. 도메인
1-1. 도메인
인터넷은 수많은 컴퓨터들이 서로 연결되어 있는 거대한 네트워크인데,
각 컴퓨터는 인터넷에 연결되 있는 동안, 유일한 IP 주소를 가지도록 되어 있습니다.
이 때 IP주소들은 모두 숫자로 구성되어 있는데요.
예를 들면, '192.0.2.1'과 같이요.
이런 주소는 기억하기가 너무 어렵습니다.
그래서, 네트워크의 컴퓨터들의 구분은 이러한 숫자로 하되,
사람들에게는 이에 매칭되는 기억하기 쉬운 이름을 사용할 수 있도록 하고 있는데요.
'192.0.2.1'이라는 IP 주소 대신,
'example.com'이라는 도메인을 사용하는 것 입니다.
1-2. DNS(Domain Name System)
위에서 '192.0.2.1'과 같은 IP주소를 'example.com'과 같은 도메인으로 매칭해서 사용한다고 하였는데요.
이 때 사용되는 것이 바로 DNS라고 하는 'Domain Name System'입니다.
이 시스템이 도메인 이름('example.com')을 해당 컴퓨터의 IP 주소로 변환해 주는 데,
Name Resolution 이라고 합니다.
이러한 과정 없이는, 우리가 웹 브라우저에 도메인 이름을 입력했을 때, 원하는 웹사이트로 연결되지 않을 것입니다.
1-3. DNS 매칭 과정
그런데, 어떻게 도메인 이름과 IP주소를 매칭해 줄 수 있을까요?
그것은 전세계에 분산되 저장된, DNS서버에 이름과 IP주소가 매칭된 기록이 있기 때문입니다.
이 서버들에 이름과 IP주소가 매칭된 기록을 저장하고, 그것을 가져오면 되는 것 입니다.
그래서 도메인을 파는 업체들은 도메인 이름만 파는 것이 아니라,
이러한 DNS서버 호스팅서비스까지 같이 제공합니다.
이 과정을 좀 더 자세히 보면 다음과 같습니다.
- 도메인 이름을 업체에서 구매
- 해당 도메인 이름에 대한 DNS 레코드를 설정
- 도메인이름과 IP주소를 매칭한 A레코드 설정
- 필요한 경우 CNAME레코드 설정
- 글로벌 DNS서버 업데이트
- (자격이 있는) 도메인 업체에서 위에서 설정 한 것을 DNS서버에 배포
참고로 위에서 언급한,
'A 레코드'는 "Address Record"의 약자인데요.
도메인 이름을 IP 주소(IPv4프로토콜)로 직접 매칭하는 것을 말합니다.
'CNAME 레코드'는 "Canonical Name Record"의 이구요.
이 레코드는 한 도메인 이름(별칭)을,
다른 도메인 이름(정규 이름)에 매핑하는데 사용됩니다.
예를 들어, 'http://www.example.com'이 'example.com'으로 연결되어 있다면,
이 정보는 CNAME 레코드에 저장됩니다.
이 경우 'http://www.example.com'은 별칭이고, 'example.com'은 그것의 정규 이름입니다.
3. 브라우저에서 도메인 입력 후 IP주소 호출 과정
사용자가 브라우저에 도메인을 입력하고 나면,
다음과 같은 과정으로 IP주소가 호출되어 집니다.
- 도메인 이름을 입력
- 사용자의 컴퓨터가 먼저 로컬 DNS 서버에 요청을 보내 도메인 이름에 대한 IP 주소를 질의
- 로컬 DNS 서버에 해당 정보가 없는 경우, 요청은 상위 DNS 서버로 전달
- 필요한 경우 루트 DNS 서버까지 거슬러 올라갈
- 해당 도메인의 정보를 관리하는 DNS 서버가 찾아지게 됨
- 해당 DNS 서버가 도메인 이름에 해당하는 IP 주소 정보를 제공
4. 도메인 이름과 URL
도메인 이름과 URL(Universal Resource Locator)은 종종 혼동되지만,
두 용어는 서로 다른 개념입니다.
도메인 이름은 특정 서버의 주소이구요.
URL은 인터넷 상의 특정 리소스인 웹페이지나 이미지 파일 등을 가르킵니다.
즉, URL이 도메인 이름을 포함한 넓은 개념이라는 뜻 입니다.
예를 들어, 'http://www.example.com/index.html'은 URL인데,
여기서 'http://www.example.com'이 도메인 이름입니다.
5. 도메인 이름과 매칭된 IP주소 확인해 보기
터미널에서 ping 명령어와 함께,
도메인이름을 입력하면,
매칭되는 ip 주소를 볼 수 있습니다.
ping <도메인네임>
잘 알고 있는 사이트들의 주소를 입력해 보시면, 매칭되어진 IP주소를 확인해 볼 수 있습니다.
위에서 알아보았던 DNS시스템에 따라서 등록된 주소로 매칭이 되어지는 것 이지요.
'SSL, HTTP, Network Basics' 카테고리의 다른 글
Websocket Protocol 에 대해서 이해해 보자 # Stomp (1) | 2023.05.08 |
---|
댓글