반응형

3.3장. 그 외 주소들

 

학습목표

- MAC Address, Port Number 등의 다양한 주소에 대해 파악할 수 있다.

 

 

MAC(Media Access Control) 주소를 Physical(물리적) 주소라고하며 앞서 본 IP 주소는 Logical(논리적) 주소라고도 합니다. 물리적 주소란 하드웨어 제조 시 ROM영역 안에 저장되어 나오는 주소로 컴퓨터의 경우 NIC(Network Interface Card - 랜카드)에서 확인할 수 있으며 스마트폰, 스위치, 라우터, IP공유기, 방화벽 등의 통신에 사용되는 대부분의 장비에 고유한 MAC주소가 할당되어 있어 하드웨어 장비를 식별할 수 있도록 하는 역할을 하고 있습니다.

 

MAC주소는 16진수 체계로 48비트 구조이며 앞 부분의 24비트는 IEEE(국제전기전자기술자협회)에서 벤더사(제조사)로 할당하고 뒤 부분의 24비트는 각 벤더사에서 각 제품에 할당하는 구조입니다. 그래서 같은 벤더사의 랜카드라면 앞 부분의 24비트는 동일하겠습니다.

이러한 앞 부분의 24비트를 OUI(Organizational Unique Identifier)코드라고 합니다.

 

내컴퓨터에 할당된 MAC주소를 확인하기 위해서는 시작->실행->cmd 입력 후 활성화된 Command창에서 ipconfig /all 명령어로 확인이 가능하며 그림3-6에서 물리적 주소 부분이 MAC주소 부분이며 제조사가 같은 동일한 랜카드이면 예제에서는 9C-5C-8E 부분(OUI 코드)은 똑같습니다. 

 

MAC주소는 OSI 2계층 주소와 3계층에서 사용하는 IP주소와의 맵핑(Mapping)이 필요한데 컴퓨터의 Command창에서 arp -a 명령어를 통해 ARP(Address Resolution Protocol) Table 확인이 가능하며 L2스위치에서는 #show mac-address-table을 통해 MAC주소와 IP주소가 맵핑된 MAC Table을 통해 관리하고 있습니다. 참고로 ReverseARP 프로토콜도 2-3계층 주소 풀이에 사용되어집니다.

 

 

[ 그림3-5. 그 외 주소들 : MAC주소 ] - 후티(출처)

 

 

Port(포트) 주소는 OSI 4계층 주소로 전송 계층의 TCP, UDP  프로토콜의 헤더(Header)부분에 포함이 되며 목적지를 찾아가는데 있어 IP 주소가 필요하지만 목적지에 있는 호스트의 프로세서를 식별하고 구별하기 위해서는 포트 주소가 필요합니다.
Port는 '항구/항만'이라는 뜻으로 수 많은 선박(데이터)들이 쉴새없이 드나들며 정해진 구역안에서 출발 또는 도착을 하게되며 특정 지역을 막으면 그 쪽으로는 선박이 들어갈 수가 없게 되듯이 도착지의 포트가 닫혀 있으면 데이터 전송을 할 수 없게 됩니다.

 

예를 들어 192.168.100.10/24 라는 IP 주소를 가지고 있는 호스트가 있고 이 호스트에 HTTP, FTP, Telnet Process가 동시에 운용중이라고 가정한다면 목적지까지는 IP 주소를 통해 찾아가고 전달할 데이터가 HTTP인지, FTP인지, 아님 Telnet인지 구별하여 처리하는 것이 바로 포트 주소의 역할로 한 마디로 목적지에 도착하기까지의 최종 관문인 셈입니다. 
목적지 호스트의 관리자가 HTTP 기본 포트 넘버인 80포트를 막아놨다면 문을 열어주지 않는 이상 목적지 앞에서 더 이상 갈 수가 없게 됩니다. 


'들어갈려면 나를 통과해 가라' 

 

이러한 포트 주소는 16비트의 길이를 가지고 있으며 부호가 없는 십진수로 표기를 하고 있습니다. 사용할 수 있는 주소의 범위는 0 ~ 65,535로 서로 다른 TCP, UDP 연결을 지원하고 있는데 주소의 길이가 16비트이므로 2의 16승 = 65,536개를 표현할 수 있게됩니다.

 

포트 주소의 범위 중

Well-Known Ports(잘 알려진 포트) - 0 ~ 1023 : 많이 사용하고 있는 서비스에 기본값으로 예약이 되어 있는 주소 범위

Registred Ports(등록된 포트) - 1024 ~ 49151

Dynamic Ports(Private Ports : 동적/사설 포트) - 49452 ~ 65535

위와 같이 나눌 수 있으며 IANA에서 관리하므로 보다 자세한 사항은 IANA사이트에서 확인할 수 있습니다.

서버쪽과는 달리 클라이언트 쪽에서는 포트 주소를 크게 신경쓰지 않고 단지 유일한 포트 주소인지에 신경을 쓰는데 이를 Ephemeral(잠시살아있는)이라고 표현하기도 합니다. 
  

Socket(소켓)주소는 원격 및 동일 호스트 간 프로세스 대 프로세스 통신(IPC) 기능을 범용화하여 제공하는 역할을 하는 추상적인 포트를 말하며 'IP 주소 + Port 주소'로 형식은 192.168.100.10:80과 같습니다. 

 

 

도메인(Domain) 주소는 edushare.tistory.com처럼 알기 쉬운 문자로 만든 주소로 실제 통신에서는 앞서 봤던 IP 주소로 통신이 됩니다. 다만, 우리가 인터넷을 하면서 일일이 IP주소를 외우가 힘들기에 편하게 외우고 접근이 가능한 주소를 만든 것이 바로 도메인(Domain)주소가 되겠습니다. 

초창기엔 IP주소로 사용하다가 사용해야 될 서비스들이 점점 많아지면서 Hosts파일을 이용했는데 어느 순간부터 아~~주 많아지다보니 일일이 IP주소를 입력하거나 Hosts파일에 기입하는 방식으로는 한계에 다다르게 되어 도메인을 관리하기 위한 오늘날의 DNS(Domain Name Service)가 나오게 된 것입니다. 

 

 

[ 그림3-6. 그 외 주소들 : 도메인 주소 체계 ] - 후티(출처)

 

 

도메인 주소는 국가도메인(ccTLD : country code Top Level Domain)과 일반(gTLD : generic Top Level Domain)도메인으로 나눌 수 있는데 국가도메인은 국가를 나타내며 일반도메인은 .com(회사) / .net(네트워크 관련기관) / org(비영리기관) / .biz(사업) 등 등록인의 특성에 따라 사용할 수 있는 도메인을 말합니다. 


또한 도메인(Domain)주소는 다른 주소와 마찬가지로 인터넷상에서 사용되는 도메인은 전 세계적으로 고유하게 존재하여야 하므로 공통적으로 정해진 체계에 따라야 하며 임의로 변경되거나 생성될 수 없습니다. 인터넷상의 모든 도메인은 “.”또는 루트(root)라 불리는 도메인 이하에 아래 그림3.6과 같이 나무를 거꾸로 위치시킨 역트리(Inverted tree)구조로 계층적으로 구성되어 있습니다.


루트 도메인(Root Domain) 바로 아래의 단계를 1단계 도메인 또는 최상위 도메인(TLD : Top Level Domain)이라고 부르며 그 다음 단계를 2단계 도메인(SLD : Second Level Domain)이라고 부릅니다. 

 

앞서 살펴봤던 OSI 3계층 주소인 IP주소 외에 다양한 주소들이 통신에 사용되는 것을 살펴보았습니다. 각 주소들에 대한 내용은 강의가 진행되면서 다시 언급이 될 것으로 편하게 읽고 넘어가면 되겠습니다.

 

정리하기

맥 주소 - 2계층 주소(16진수  48bit)

포트 넘버 - 4계층 주소(0 ~ 65,535)

도메인 주소 - 계층적 구조

- 후티

반응형

+ Recent posts