jyamethyst21 님의 블로그
네트워크 보안 본문
오늘부터 며칠동안은 보안의 가장 기본적인 분야이자, 필자가 개인적으로 흥미있게 공부했던 분야인 네트워크와 관련된 공부를 할 예정이다.
네트워크 주소 체계
네트워크 통신은 계층마다 사용하는 주소가 다르며 세부 사항은 다음과 같다.
| L2 | MAC Address | 같은 네트워크 내 실제 전달 |
| L3 | IP Address | 논리적 위치 식별 |
| L4 | Port Number | 애플리케이션 식별 |
| L7 | FQDN | 사람이 쓰는 이름 |
또한, ip 주소는 네트워크 아이디와 호스트 아이디로 구성되어 있으며, 이때 서브넷 마스크는 어디까지가 네트워크이고 어디부터가 호스트인지 구분하게 해준다. 좀 더 덧붙이자면 네트워크 주소는 같은 망인지 구분해주는 역할이고 호스트 아이디는 같은 망 내 몇번째 컴퓨터인지 세부 주소를 알려준다고 생각하면 될 것 같다.
(내부망 = 같은망 = 송신지와 수신지 네트워크 아이디 동일 <-> 외부망 = 다른망 = 네트워크 아이디 동일 X)
MAC 주소 (2계층 주소)
MAC 주소는 2계층에서 아주 중요하게 사용되는 주소이며, 48비트이다.
이 중 24비트는 제조사 코드, 나머지는 일련번호이다.
(EX: 00-40-D0-15-81-C5)
FQDN (FULLY QUALIFIED DOMAIN NAME)
FQDN은 사람이 기억하기 쉬운 이름, 즉 우리가 일반적으로 사용하는 도메인을 의미한다. (EX. WWW.NAVER.COM) 다만, 해당 주소는 통신 때 필요한 게 아니므로 실제 통신 전에는 이를 DNS를 통해 IP로 변환하여 통신하게 된다.
DNS & ARP & RARP
앞서 말한 DNS는 FQDN 즉, 도메인 주소를 IP로 바꾸는 역할을 한다. 반대로 IP를 도메인으로 바꿀 때도 DNS를 활용한다.
반면, ARP는 IP주소를 2계층에서 사용하는 주소인 MAC 주소로 바꿀 때 사용한다. ARP는 DNS와 달리 MAC 주소를 IP로 바꿀 때 ARP를 사용하는 것이 아닌 RARP를 사용한다. 여기서 R은 REVERSE이므로 암기에 참고하길 바란다.
이에 더해 ARP에 대해 덧붙이자면, ARP는 request, reply 두가지 패킷이 존재한다. reques는 브로드캐스트 방식으로 운용되며 해당 ip가 누구인지 밝혀낸다, 반면, reply는 유니캐스트 방식이다. 이 모든 결과는 arp -a 명령어를 하면 볼 수 있듯이 arp cache table에 저장된다! (arp cache table은 ip와 mac이 매핑되어 저장되는 테이블임(동적은 자동학습 및 시간 지나면 삭제, 정적은 관리자가 수동설정 및 변경되지 않음))
예시)
www.test.com
→ DNS → 192.168.1.20
→ ARP → 1111.2222.2222
포트 번호 (4계층 주소)
포트 번호는 애플리케이션을 구분하는 번호이다. 범위는 0부터 65535까지 할당된다.
여기서 0~1023은 well-known port인데 특정 애플리케이션용으로 미리 예약한 포트를 의미한다. https가 443, http가 80인 것이 예이다.
1024~49151은 registered port이다. 이는 신규 애플리케이션에 등록해서 사용할 수 있는 포트로 예를 들어 신규 메신저를 만든다고 하면 이같은 애플리케이션이 해당 범위 내에서 할당된다.
마지막으로 49152~65535는 동적 포트로, 운영체제가 부여하는 포트번호이다. 개인적인 목적으로 사용할 수 있다.
| 범위 | 설명 |
| 0–1023 | Well-known Port |
| 1024–49151 | Registered Port |
| 49152–65535 | Dynamic (Ephemeral) Port |
전송 모드
① Unicast (1:1)
- 특정 대상에게만 전송
- 일반적인 웹 통신
② Broadcast (1:M)
- 같은 네트워크의 모든 호스트에게 전송 (불특정 다수)
- IP: 255.255.255.255 (해당 범위만 브로드캐스트)
- MAC: FF:FF:FF:FF:FF:FF
- ARP, DHCP에서 사용
③ Multicast (1:N)
- 특정 그룹만 수신
- IP 범위: 224.0.0.0 ~ 239.255.255.255 (해당 범위여야만 멀티 캐스트! , 브로드캐스트는 불특정 다수, 멀티는 특정 다수)
- MAC 매핑: 01:00:5E:xx:xx:xx (24비트는 다음과 같아야하고 25비트(E 다음) 부분이 1일 경우는 다음과 동일한 문자더라도 멀티캐스트가 아닐 수 있음, 확인 필요함)
트래픽 전송(Forwarding vs Flooding)
트래픽 전송은 두가지 방법이 존재한다. 수신자를 정확히 알아서 해당 포트로 전송하는 경우(forwarding), 수신자를 정확히 몰라서 송신자를 제외한 포트에 전체 전송하는 경우(flooding)이다. 예로, flooding은 mac 테이블에 정보가 없을 때 발생한다.
| 방식 | 설명 |
| Forwarding | 정확한 포트로만 전송 |
| Flooding | 송신 포트 제외 전체 전송 |
네트워크 장비별 역할
① Hub (L1)
- 신호를 모든 포트로 전송
- 충돌 발생
- 오버헤드 매우 큼
- 무조건 flooding
② Switch (L2)
- MAC Address Table 기반 전달
- 목적지 MAC이 없으면 Flooding
- forwarding 방식과 적절히 사용됨
③ Router (L3)
- IP 기반 라우팅
- 서로 다른 네트워크 연결
- 브로드캐스트 차단(폐기)
- forwarding 기법
- forwaring 기법만 사용하기 때문에 복잡한 네트워크의 경우 원하는 정보가 전송되지 않을 수 있음
참고 사항
패킷이 라우터를 지날 때마다, IP 주소는 변하지 않고 MAC 주소는 매 홉마다 변경된다.
즉, end-to-end는 ip가 유지되고, hob-by-hop은 mac 주소가 변경된다.
'보안 & IT 지식 🌺' 카테고리의 다른 글
| 네트워크 보안 (1) | 2026.02.04 |
|---|---|
| 네트워크 보안 (0) | 2026.02.04 |
| 머신러닝 & 딥러닝 (0) | 2026.01.20 |
| 머신러닝 & 딥러닝 (0) | 2026.01.19 |
| 머신러닝 & 딥러닝 (0) | 2026.01.16 |
