1장에서 계층마다 주소 체계가 다르다는 점을 확인했습니다. 이번 장은 그중 가장 아래, 같은 링크 안에서 프레임이 오가는 계층을 봅니다.
개발자가 이 계층을 직접 다룰 일은 적지만, 서버 인프라와 컨테이너 네트워크를 이해하려면 기본 개념은 필요합니다.
2.1 MAC 주소
- 네트워크 인터페이스(NIC)에 부여된 48비트 주소. 예:
00:1A:2B:3C:4D:5E - 같은 네트워크(같은 링크) 안에서만 의미가 있습니다.
- 라우터를 넘어가면 MAC 주소는 매 구간마다 새로 바뀌고, IP 주소는 (NAT가 없다면) 유지됩니다.
이 차이를 기억하세요. MAC은 "다음 홉"의 주소, IP는 "최종 목적지"의 주소입니다.
2.2 이더넷과 스위치
- 이더넷(Ethernet): 유선 LAN의 표준 프로토콜. 프레임의 최대 페이로드는 기본 1500바이트(= MTU).
- 허브(Hub): 받은 신호를 모든 포트로 뿌림. 사실상 사라진 장비.
- 스위치(Switch): MAC 주소 테이블을 학습해 목적지 포트로만 프레임을 전달. L2 장비.
2.3 ARP — IP 주소로 MAC 주소 찾기
A가 같은 네트워크의 B(192.168.0.20)에게 패킷을 보내려면 B의 MAC 주소가 필요합니다.
A → (브로드캐스트) "192.168.0.20 가진 사람 누구? MAC 알려줘"
B → (유니캐스트) "나야. 내 MAC은 aa:bb:cc:dd:ee:ff"A는 이 결과를 ARP 캐시에 저장합니다. 목적지가 다른 네트워크에 있으면 목적지의 MAC이 아니라 기본 게이트웨이(라우터)의 MAC을 ARP로 찾습니다.
ip neigh # Linux ARP 테이블 확인
arp -a # macOS / Windows실무 포인트: 서버 IP를 바꿨는데 일부 장비에서 한동안 접속이 안 된다면, 상대 장비의 ARP 캐시가 이전 MAC을 들고 있을 가능성이 있습니다. (VIP 페일오버 시 Gratuitous ARP를 보내는 이유)
2.4 VLAN
물리적으로 같은 스위치에 연결되어 있어도 논리적으로 네트워크를 분리하는 기술입니다. 사내망에서 "개발망 / 운영망 / 사무망"이 서로 안 보이는 이유가 대부분 VLAN + 방화벽 정책입니다. 개발자는 "같은 건물, 같은 스위치인데 왜 안 붙지?"라는 상황에서 VLAN 분리를 의심해볼 수 있으면 충분합니다.