3주차 network
업데이트:
네트워크 보안 정리
1. 주소의 종류
- IP 주소: 인터넷 프로토콜 주소로, 네트워크 상에서 장치를 식별.
- 서브넷 마스크: 네트워크 ID와 호스트 ID를 구분.
- 게이트웨이: 네트워크 간 연결을 담당하며 외부망으로 나갈 때 첫 번째 목적지 역할.
2. 네트워크 주소
- MAC 주소 (2계층):
- LAN 카드에 부여된 48비트 물리적 주소.
- 16진수 형식, 제조사와 일련번호로 구성.
- IP 주소 (3계층):
- 논리적 주소로, Network ID와 Host ID로 구성.
- 서브넷 마스크를 통해 Network ID를 구분.
- Port 번호 (4계층):
- Well-known (0~1023): 서버용, 정적 할당.
- Registered (1024~49151): 등록된 용도.
- Dynamic (49152~65535): 클라이언트용, 동적 할당.
- FQDN (7계층):
- 문자 주소(예: www.naver.com).
- Hostname + Domain name으로 구성.
3. 네트워크 주소 서비스
- DNS: 문자 주소 ↔ IP 변환.
- ARP: IP ↔ MAC 변환.
- RARP: MAC ↔ IP 변환.
4. 전송 모드
- Unicast: 1 대 1 전송.
- Broadcast:
- 한 장치가 모든 장치에 전송.
- 브로드캐스트 MAC 주소:
FF:FF:FF:FF:FF:FF
. - 브로드캐스트 IP 예시:
192.168.1.255
.
- Multicast:
- 특정 그룹에 전송.
- IP 범위:
224.0.0.0 ~ 239.255.255.255
. - 멀티캐스트 MAC 주소는
0100.5E
로 시작.
5. 계층별 장비
장비 | 계층 | 특징 |
---|---|---|
허브 | 1계층 | 모든 포트로 데이터를 플러딩(Flooding). 경로 데이터베이스 없음. |
스위치 | 2계층 | MAC Address Table 기반으로 Forwarding 또는 Flooding 수행. |
라우터 | 3계층 | 라우팅 테이블 기반으로 경로 설정, 브로드캐스트/멀티캐스트 패킷 폐기. |
6. 데이터 전달 방식
- Forwarding:
- 목적지가 MAC Address Table에 있을 경우 해당 포트로 전송.
- Flooding:
- 목적지가 MAC Address Table에 없거나 브로드캐스트/멀티캐스트 패킷일 경우 모든 포트로 전송.
7. ARP(Address Resolution Protocol)
- ARP Request:
- 송신자가 수신자의 MAC 주소를 조회하기 위해 브로드캐스트 방식으로 요청.
- ARP Reply:
- 수신자가 자신의 MAC 주소를 유니캐스트 방식으로 응답.
8. WAN과 LAN의 차이
- WAN (Wide Area Network):
- 넓은 지역을 아우르는 네트워크.
- 인터넷 서비스 제공자(ISP)가 관여하며 두 LAN을 연결하는 구간을 의미.
- LAN (Local Area Network):
- 좁은 지역(예: 사무실, 집) 내에서 사용되는 네트워크.
9. 데이터 통신 방식
- 같은 LAN 구간:
- 송신자와 수신자가 동일한 네트워크 ID를 가짐.
- 데이터는 스위치를 통해 전달됨.
- 다른 LAN 구간:
- 송신자와 수신자의 네트워크 ID가 다름.
- 게이트웨이를 통해 데이터가 전달되며, 라우터가 경로를 설정.
10. Media Translation
- 데이터 전송 시 계층별 주소 변화:
- 송/수신 IP(3계층)는 변하지 않음.
- 송/수신 MAC(2계층)은 각 네트워크 장비를 거칠 때마다 변경됨.
11. 주요 명령어
명령어 | 설명 |
---|---|
show mac-add |
스위치의 MAC Address Table 확인 |
show ip route |
라우터의 라우팅 테이블 확인 |
arp -a |
ARP 캐시 테이블 확인 |
ipconfig /displaydns |
DNS 캐시 테이블 확인 |
nslookup [도메인] |
도메인의 IP 주소 및 서버 정보 조회 |
ping [IP/도메인] |
대상 서버와의 연결 여부 테스트 |
tracert [IP/도메인] |
패킷이 목적지까지 가는 경로 추적 |
12. 명령어 사용 사례
- 네트워크 문제 해결:
- ARP 캐시 확인(
arp -a
)으로 MAC 주소 충돌이나 연결 문제 진단. - DNS 캐시 확인(
ipconfig /displaydns
)으로 도메인 이름 해석 오류 점검.
- ARP 캐시 확인(
- 스위치와 라우터 관리:
- 스위치의 MAC Address Table 확인(
show mac-add
)으로 패킷 경로 분석. - 라우터의 라우팅 테이블 확인(
show ip route
)으로 올바른 경로 설정 여부 점검.
- 스위치의 MAC Address Table 확인(
- 도메인 및 서버 정보 조회:
nslookup
명령어를 사용하여 특정 도메인의 IP 주소를 확인하고 연결 문제 진단.
네트워크 트래픽 흐름 및 캐시 테이블 정리
ARP 캐시 테이블
- 구조: IP 주소 : MAC 주소
- 기능: IP 주소와 MAC 주소 간의 매핑 정보를 저장.
- 특징:
- 일정 시간 동안만 데이터를 저장 (aging time).
- ARP 캐시 테이블에 정보가 없으면 ARP Request를 보냄.
MAC 주소 테이블
- 구조: MAC 주소 : 출구 번호 (포트)
- 기능: 스위치가 MAC 주소를 기반으로 트래픽을 포워딩할 수 있도록 함.
- 특징:
- MAC 주소 테이블에 정보가 있으면 포워딩.
- 정보가 없으면 플러딩 방식으로 전송.
DNS 캐시 테이블
- 구조: 문자 주소 (도메인 이름) : IP 주소
- 기능: 도메인 이름과 IP 주소 간의 매핑 정보를 저장.
- 특징:
- 이전에 통신한 기록이 있는 경우 DNS 캐시 테이블에서 조회 가능.
- 명령어
ipconfig /displaydns
를 통해 확인 가능.
트래픽 흐름
내부망 트래픽 흐름
- 수신지 IP 조회
- DNS를 이용하여 수신지 IP를 확인:
- DNS 캐시 조회 (
ipconfig /displaydns
). - Hosts.txt 파일 조회 (
C:\Windows\System32\drivers\etc\hosts
). - DNS 서버에 Request/Response 요청.
- DNS 캐시 조회 (
- DNS를 이용하여 수신지 IP를 확인:
- 내부망/외부망 확인
- 송신자의 서브넷 마스크를 이용하여 수신지가 내부망인지 외부망인지 확인.
- 수신지 MAC 주소 조회
- ARP를 이용하여 수신지 MAC 주소 확인:
- ARP 캐시 테이블 조회.
- ARP Request/Reply 과정을 통해 MAC 주소 획득.
- ARP를 이용하여 수신지 MAC 주소 확인:
- 트래픽 전송
- 수신지로 트래픽을 전송.
외부망 트래픽 흐름
- 내부망과 동일한 방식으로 수신지 IP 및 MAC 주소를 확인.
- 외부망으로의 통신은 게이트웨이를 통해 이루어짐.
수신지 IP 알아내는 방법 (공격 시나리오)
- DNS 캐시 테이블 조회
- 명령어
ipconfig /displaydns
를 사용하여 이전 통신 기록 확인.
- 명령어
- Hosts.txt 파일 조회
- 경로:
C:\Windows\System32\drivers\etc\hosts
.
- 경로:
- DNS 서버 이용
- DNS Request/Response 과정을 통해 수신지 IP 확인.
주요 명령어
tracert
: 게이트웨이 주소 및 네트워크 장애 지점을 찾을 때 사용.show ip route
: 라우팅 테이블 확인 명령어.
추가 개념
Aging Time
- 캐시 테이블(ARP, DNS 등)에 저장된 데이터는 일정 시간이 지나면 삭제됨.
- 네트워크 자원을 효율적으로 관리하기 위한 메커니즘.
플러딩(Flooding)
- 스위치가 목적지 MAC 주소를 알 수 없을 때, 해당 프레임을 네트워크의 모든 포트로 전송하는 방식.
파일 구조 요약
테이블 종류 | 구조 | 기능 |
---|---|---|
ARP 캐시 | IP 주소 : MAC 주소 | IP와 MAC 간 매핑 정보 저장 |
MAC 주소 | MAC 주소 : 출구 번호 | 스위치 포워딩 결정 |
DNS 캐시 | 문자주소(도메인 이름) : IP 주소 | 도메인 이름과 IP 간 매핑 정보 저장 |