MAC는 미디어 액세스 컨트롤(Media Access Control)의 준말입니다.
만약 컴퓨터가 서로 통신을 할때 어떻게 네트워크상에서 서로를 구분해서 인식할까요?!
통신을 하기위해서 서로를 구분할 일종의 주소가 필요하게 되는데 이 역할을 바로 MAC Address가 담당하게 됩니다.
"그러면 IP 주소가 뭐지? IP주소도 통신을 위해서 각 장비마다 IP주소를 배정하게되고 그 주소를 가지고 통신하는 것 아니야?" 라고 생각할 수 있습니다.
앞에서의 질문은 맞습니다. 인터넷은 TCP/IP로 통신을 하고 따라서 통신을 하기 위해서 IP주소를 사용합니다. 하지만 이 경우에도 맥어드레스를 사용합니다!
즉 우리가 통신을 할때 IP주소를 다시 MAC으로 바꾸는 절차(ARP : Address Resolution Protocol)를 밟고 있는 것입니다.
윈도우
위사진 처럼 cmd에서 ipconfig/all 이라는 명령어를 치면 이렇게 나오게 됩니다.
맥주소를 알기위해서는 빨간박스안의 물리적 주소를 보시면됩니다!
mac
mac은 환경설정 - 네트워크 - 고급 -하드웨어로 들어가시면 MAC주소가 나오게 됩니다!
먼저 같은 네트워크상에 두 컴퓨터가 있다는 가정하에 보겠습니다!
y라는 pc와 z라는 pc가 있다고 할게요.
두컴퓨터는 서로 통신을 할려고 하는데 pc y는 pc z의 주소를 알고 있습니다.
이때 pc y는 자기가 속한 네트워크에 있는 모든 pc에게 "z라는 녀석이 우리 네트워크에 있으면 내가 통신하고 싶으니깐 맥주소를 나에게 전송해!"메시지를 보냅니다!(이과정이 Broadcast)
이경우 z와y는 같은 네트워크에 있기 때문에 y가 보낸 Broadcast를 받았을 겁니다.
그럼 z는 y에게 맥 어드레스를 알려주게 되고 y는 받은 z의 맥 어드레스로 통신을 시작하게 됩니다!
자 그러면 같은 네트워크상에 있지 않은 경우는 어떻게 할까요?
먼저 y가 똑같이 Broadcast를 보내게 됩니다.
하지만 이경우 자신이 속한 네트워크상에서는 z라는 pc가 없기 때문에 ARP Request를 받지 못하죠
하지만 이때 라우터가 y에게 이런말을 합니다 "y야 여기 네트워크에는 z가 없으니깐 내가 대신 다른 네트워크에있는 z를 찾아서 전달해줄게"라고 합니다.
따라서 y는 z에게 정보를 보낼 때 받는 맥 어드레스를 라우터의 맥 어드레스 해서 보내게 됩니다!
그후 z가 살고있는 네트워크의 라우터로 전달하게 됩니다.
그후 그 라우터가 Z의 맥어드레스를 알아낸 후 Z의 맥어드레스를 이용해서 전달하게 됩니다!
결론은 IP주소가 잇어도 통신에서 맥 어드레스가 사용되는 겁니다!
네트워크에 붙는 각 장비들은 48bit(6octet이 됩니다. octet이란 8개의 bit를 묶은 것을 말합니다.)의 주소를 갖게 되는데, 이 주소는 컴퓨터의 하드웨어이 랜카드 또는 네트워크 장비에 이미 고정되어 있는 주소이고 유일한 주소입니다.(전 세계에 유일한 주소)
이 주소를 바로 MAC Address라고 부르거나 하드웨어 주소라고 합니다.
따라서 모든 랜카드 하나하나마다 서로 다른 맥 어드레스가 있고 또 라우터나 스위치에도 맥 어드레스가 들어있습니다.
물론 서버에도 들어있겠죠? 서버에도 랜카드가 설치될 거니까 말이죠?!
하이픈(-)
00-60-97-8F-4F-86
콜론(:)
00:60:97:8F:4F:86
점(.)
0060.978F.4F86
48bit의 MAC Address를 16진수로 표현한것 입니다.
앞쪽 6개의 16진수를 보시면(00-60-97) 이것은 생산자를 나타내는 코드입니다. 이코드를 OUI(Organizational Unique Identifier)라고 합니다.
쉽게 생각하시면 그냥 OUI는 제조사 식별코드라고 생각하시면됩니다
예를 들면 음 삼성에서 만들었구나~ 이런식으로요
그리고 나머지 뒤에 오는 나머지 6자리가 Host Identifier라고 합니다.
이것도 쉽게 생각하시면 그 제조사의 제품의 시리얼 넘버라고 생각하시면 됩니다.
정리를 해보면 맥 주소 중에서 앞쪽 절반은 미리 약속된 규정에 따라 각 네트워크 장비를 만드는 회사에 분배해주고, 그 회사에서는 나머지 절반을 일련번호로 만들어 각 장비에 부여하는 겁니다.