MAC addresses
실제로 링크 계층 주소를 가진 것은 호스트나 라우터가 아닌 호스트나 라우터의 어댑터(네트워크 인터페이스)다. 다수의 네트워크 인터페이스를 갖고 있는 호스트나 라우터는 여러 개의 링크 계층 주소를 갖게 된다. 링크 계층 스위치는 호스트나 라우터를 연결해주는 인터페이스에 링크 계층 주소를 할당받지 않는다. 그 이유는 링크 계층 스위치가 호스트와 라우터 간에 데이터그램을 전달하는 일을 하기 때문이다. 링크 계층 주소는 LAN address, physical address, 또는 MAC address라고도 알려져 있다.
대부분의 랜의 경우 MAC 주소는 길이가 6바이트이며, 따라서 (2^8)^6 = 2^48개만큼의 사용 가능한 랜 주소가 있다. 6바이트의 주소는 주로 '1A-2F-BB-76-09-AD' 처럼 16진수 표기법으로 표시되며, 주소의 각 바이트는 2개의 16진수로 표시된다. MAC 주소는 원래 영구적이도록 설계되었으나, 이제는 소프트웨어를 사용해서 어댑터의 MAC 주소를 변경할 수 있다.
MAC 주소의 흥미로운 특징 중 하나는 어떤 어댑터도 동일한 주소를 갖지 않는다는 점이다. IEEE는 MAC 주소 공간을 관리한다. 어떤 회사에서 어댑터를 제조하려면 2^24개의 주소로 이루어진 주소 영역을 구매해야한다. IEEE에서는 MAC 주소의 첫 24비트를 고정하고, 나머지 24비트는 회사로 하여금 각 어댑터에게 유일하게 부여하는 방식으로 2^24개 주소를 할당한다.
어댑터의 MAC 주소는 계층구조가 아닌 평면 구조를 가지며, 어댑터의 위치에 따라 변경되지 않는다. 이더넷 카드가 있는 휴대용 컴퓨터는 어디에 있든지 항상 동일한 MAC 주소를 갖는다. 이에 반해서 IP 주소는 계층구조를 가지며, 호스트의 IP 주소는 호스트가 이동하면 변경되어야 한다. 어댑터의 MAC 주소는 평면 주소 구조를 갖는다는 점과 사람이 어디로 가든지 바뀌지 않는다는 점에서 주민등록번호와 유사하다. IP 주소는 계층적이고 사람이 이사할 때마다 변경되어야 한다는 점에서 우편 주소와 유사하다.
ARP: address resolution protocol
네트워크 계층 주소와 링크 계층 주소가 있으므로 이들 주소 사이에 변환이 필요하다. 인터넷에서는 이것을 ARP에서 해준다.
각 호스트와 라우터는 자신의 메모리에 ARP 테이블을 갖고있다. 이 ARP 테이블은 IP 주소와 MAC 주소 간의 매핑 정보를 포함한다. ARP 테이블은 또한 테이블에서 각 매핑이 언제 삭제되는지를 나타내는 TTL 값을 포함한다.
호스트 A에서 B에게 데이터그램을 전송하려고 하는 예시를 보자. 우선 A는 B의 IP주소가 포함된 ARP 쿼리를 브로드캐스트 한다. LAN 상에 모든 노드는 이 쿼리를 받게된다.
해당 쿼리를 받은 B는 A에게 자신의 MAC 주소를 전송한다.
B로부터 답을 받은 A는 자신의 ARP 테이블에 B에 대한 정보를 저장한다.
다음 예시는 서브넷에 없는 노드로 데이터그램을 전송하고자 하는 경우이다. A가 라우터 R의 IP주소와 MAC주소를 알고 있다고 가정하자.
A는 B에게 전송할 데이터그램을 만드는데, 목적지 IP 주소는 B의 IP 주소로, 목적지 MAC 주소는 A의 서브넷에 존재하는 R의 MAC 주소로 설정한다.
프레임은 A에서 R로 이동하게 된다. 그리고 데이터그램은 R의 IP로 전송된다.
R은 출발지 MAC 주소를 B의 서브넷에 존재하는 R의 MAC 주소로, 목적지 MAC 주소를 B의 MAC 주소로 설정하여 프레임을 만들고, 이를 B에게 전송한다.
프레임은 R에서 B로 이동하게 된다. 그리고 데이터그램은 B의 IP로 전송되며 모든 과정이 마무리된다.
'Computer Science > Computer Networking' 카테고리의 다른 글
[Computer Networking] The Link Layer and LANs : Multiple Access Protocols (0) | 2025.01.10 |
---|---|
[Computer Networking] Network Layer : ICMP, SNMP (0) | 2025.01.10 |
[Computer Networking] Network Layer : Software Defined Networking (SDN) Control Plane (0) | 2025.01.08 |
[Computer Networking] Network Layer : BGP (ISP 간의 라우팅) (0) | 2025.01.04 |
[Computer Networking] Network Layer : OSPF (AS 내부 라우팅) (0) | 2025.01.02 |