[네트워크] 네트워크의 주소 체계
주소의 특징
1. 유일성 - 서로 다른 대상은 서로 구분하여 지칭해야 한다.
2. 확장성 - 시스템은 시간이 흐를수록 자연스레 규모가 커진다. 최대 한계를 올바르게 설정하지 않으면, 표현공간의 크기에 제한이 생겨 확장성에도 문제가 생길 수 있다. 현재 IP 주소도 고갈 문제에 직면해 있다.
3. 편리성 - 컴퓨터 시스템은 숫자에 기반하기 때문에, 일반인이 의미를 해석하기 어려울 수 있다. 따라서, 문자로 된 이름을 추가로 부여하며, 매핑 기능이 필요하다.
4. 정보의 함축 - 구분자는 정보를 포함하는 경우가 많다. 예를 들면, 주민번호는 생년월일, 성별 등을 알 수 있다.
OSI 7계층에서의 주소
데이터링크 계층에서는 LAN 카드별로 MAC 주소가 부여한다.
네트워크 계층에서는 IP 주소를 호스트마다 부여한다.
전송 계층의 TCP에서는 네트워크 프로세스마다 별도의 포트 주소를 할당한다.
MAC 주소
LAN 카드에 내장되어 있다. 물리 계층을 통해 데이터를 전송할 때는 MAC 주소를 이용해 호스트를 구분한다. 따라서, 네트워크 계층이 데이터 링크 계층에 데이터 전송을 요청하면, IP 주소를 MAC 주소로 변환하는 작업이 이루어진다.
IP 주소
IP 프로토콜이 호스트를 구분하기 위해 사용하는 주소 체계이다.
IP주소는 32비트의 이진 숫자로 구성되며, 주로 8비트씩 네 부분으로 나누어 십진수로 표현한다.
32비트의 이진수 11000000 10101000 00000000 00000001는 192.168.0.1로 표기한다.
32비트의 제한으로, IP 주소 고갈에 직면했는데, 이를 해결하기 위해 IPv6을 사용해 128비트로 확장하기도 했다.
IP주소는 특정 규칙에 따라 인접한 주소를 묶어 국제 표준화 기구에서 관리하고 할당한다. 이는 라우팅에 중요한 역할을 한다.
DNS (Domain Name Server)
DNS 서비스는 호스트 이름을 아래와 같이 표기한다.
<호스트>.<단체 이름>.<단체 종류>.<국가 도메인>
예를 들어, www.korea.co.kr 은 대한민국(kr)의 일반 회사(co)의 korea라는 회사의 www호스트를 의미한다.
국가 도메인에는 kr(대한민국), jp(일본) 등이 있으며, 단체 종류에는 co(일반 회사), go(정부 기관)등이 있다.
DNS는 이러한 호스트 이름과 주소들을 자동으로 유지하고 관리하는 분산 데이터베이스 시스템이다. 호스트 이름과 주소는 네임 서버라는 특정 호스트가 관리하고, 주소 변환 작업이 필요한 클라이언트는 네임 서버에 요청해 호스트 이름을 주소로 변환해 사용한다.
자세한 내용은 아래 글에서 더 다루겠다.
[네트워크] DNS(Domain Name Server)
인터넷에 연결된 모든 호스트들은 IP주소를 부여받는다. 이 주소는 적절한 경로를 선택하도록 도와주지만, 일반 사용자가 암기하기 어려운 구조이다. 따라서, 문자로 구성된 주소가 추가로 필요
sm-jeon-develop.tistory.com
포트 주소
전송 계층에서 사용하며, 호스트에서 실행되는 프로세스를 구분한다. 인터넷 연결의 완성은 호스트와 호스트의 연결이 아니라, 네트워크 응용 프로세스 간의 연결이다. TCP와 UDP는 독립적으로 포트 주소를 관리하며, 포트 번호 혹은 소켓 주소 라는 용어를 사용하기도 한다.
메일 주소
응용 계층의 메일 시스템에서 사용자를 구분하기 위해 사용한다. 사용자 이름@korea.co.kr 처럼 사용자 이름과 호스트 이름을 @로 구분해 표기한다.