
3. ARP/RARP 프로토콜
- 개요
- 네트워크 계층에서 IP 프로토콜 하위에 있는 프로토콜
- 데이터링크 계층 프로토콜로 캡슐화
- ARP 프로토콜 구조
- Hardware Type(16bit) — 물리적인 주소의 프로토콜 타입
- Protocol Type(16bit) — 논리적인 주소의 프로토콜 타입
- Hardware Length(8bit) — 물리적인 주소 길이
- Protocol Length(8bit) — 논리적인 주소 길이
- Operation(16bit) — 동작 모드(1: ARP Request, 2: ARP Reply)
- Sender hardware address
- Sender protocol address
- Target protocol address — 요청 시 대상 호스트의 MAC 주소를 모르므로 모든 비트를 0으로 채움
- Target protocol address
- ARP 동작 방식
- 요청 메시지를 생성하여 브로드캐스트 방식으로 전송
- 응답자는 유니캐스트 방식으로 전송
- 요청자와 응답자 모두 자신의 ARP 캐시 테이블에 상대방의 MAC 주소 정보를 일정 시간 유지하고 이를 참조
- ARP 캐시 테이블 관리
- 개요
- 동적 정보 — ARP 요청/응답 메시지를 통해 설정된 정보로 일정 시간 동안 유지된 후 삭제
- 정적 정보 — 관리자에 의해 설정된 정보로 시스템이 종료하기 전까지 지속해서 유지되면 ARP 요청/응답 메시지에 의해 갱신되지 않음
- 명령어
- ARP 캐시 정보 확인 — arp -a
- ARP 캐시 정보 삭제 — arp -d
- ARP 캐시 정적 설정 — arp -s
- 정적 정보는 PERM으로 표시
- 개요
4. IP(IPv4) 프로토콜
- 개요
- 비연결형 프로토콜 — 논리적인 연결 상태를 유지하지 않아 패킷의 전송 순서를 보장하지 않음
- 비신뢰적 프로토콜 — 목적지까지 패킷의 안전한 전송을 보장하지 않음
- 최선 노력형 프로토콜
- 신뢰성 있는 전송을 위해 필요한 제어(흐름 제어, 오류 제어, 혼잡 제어, 순서 제어 등)를 수행하지 않음
- IP 프로토콜 구조
- VER(4bit)
- HLEN(4bit) — 4바이트 단위
- Service type(8bit) — IP 패킷의 우선순위 및 서비스 품질(전달 지연 정보, 처리율, 신뢰성 등)을 설정하기 위한 필드
- Total length(16bit)
- Identification(16bit) — 단편화 전 원본 IP 데이터그램을 식별하기 위한 ID 필드
- Flags(3bit)
- 첫 번째 비트 — 사용 안 함(예약)
- 두 번째 비트 — DF 비트
- 전송 과정에서 단편화 허용 여부
- 0 — 단편화 허용
- 1 — 단편화 미허용
- 세 번째 비트 — MF 비트
- 1 — 재조합할 추가 단편이 남아있음
- 0 — 추가 단편이 더 이상 없음
- Fragment offset(13bit)
- 최종 목적지에서 단편 재조합 시 순서를 보장하기 위한 위치값 필드
- 원본 IP 데이터그램에서 해당 단편의 상대 위치를 나타냄
- 8바이트 단위로 설정
- Time to live(8bit)
- IP 패킷의 생존 시간을 설정하는 필드로 홉 카운트로 표시
- 라우팅 과정에서 루핑 현상 방지
- 리눅스는 64, 윈도우는 128, 유닉스는 255
- Protocol(8bit)
- 상위 프로토콜을 식별하기 위한 프로토콜 번호 필드
- ICMP(1), TCP(6), UDP(17) 등
- Header checksum(16bit)
- Source IP address(32bit)
- Destination IP address(32bit)
- 주요 IP 옵션 헤더
- Loose source route — 출발지에서 지정한 경로로 라우팅할 수 없는 경우 다른 경로로 라우팅 가능
- Strict source route — 출발지에서 지정한 경로로만 라우팅하는 옵션
- IP 단편화 및 재조합
- 개요
- 하위 계층의 다양한 물리적 네트워크 프로토콜 프레임으로 캡슐화되기 위해 MTU에 따른 단편화 발생
- MTU — 물리적 네트워크 프로토콜 프레임의 페이로드 최대 크기
- 이더넷 — 1500바이트
- FDDI — 4352
- X.25 — 576
- PPP -296
- 단편화는 경유 구간의 MTU에 따라 추가로 발생할 수 있지만 재조합은 최종 목적지에서만 발생
- 일정 시간 이내에 재조합에 실패하면 수신한 모든 단편을 폐기하고 오류 보고 메시지 전송
- 하위 계층의 다양한 물리적 네트워크 프로토콜 프레임으로 캡슐화되기 위해 MTU에 따른 단편화 발생
- 단편화 동작 방식
- Offset = 해당 단편 위치(8바이트 단위로 설정(// 8)
- 단편화의 단점과 PMTUD
- 단편화가 최대한 발생하지 않도록 경유 구간의 MTU 중 가장 작은 값 계산
- DF 플래그를 설정한 패킷을 성공할 때까지 전송 후 MTU 설정
- 개요
- IP 라우팅
- 라우팅 규칙
- 목적지 주소가 동일한 네트워크에 있다면 직접 전송
- 목적지 주소가 자신과 동일한 네트워크에 속하지 않는다면 1차 경유지 주소를 라우팅 테이블을 참조하여 찾음
- 목적지가 자신인 경우 상위 계층으로 데이터 전달
- 라우팅 테이블 검색 방법 및 우선순위
- 검색 방식 — IP 패킷의 목적지 주소와 라우팅 테이블의 Netmast(Genmask)를 bit and 연산 수행 후 라우팅 테이블의 Destination 필드와 비교, 일치하는 경로를 선택하여 패킷 전송
- 검색 우선 순위 — 최장 프리픽스 매치 방식
- 목적지 IP 주소와 일치하는 경로 탐색
- 목적지 네트워크 주소와 일치하는 경로 탐색. 여러 개라면 가장 긴 목적지 네트워크 주소와 일치하는 경로 우선
- 일치하는 경로가 없으면 기본 게이트웨이로 전송
- 실습
- (리눅스) 라우팅 테이블 설정 일부 — netstat -rn
- Destinataion
- Gateway
- Genmask — 범용 목적의 마스크
- Flags — 해당 경로에 대한 상태 정보 플래그
- U(route is UP) — 해당 경로가 활성화되어 있음
- G(use Gateway) — 해당 경로는 게이트웨이 사용
- H(target is a Host) — 해당 경로의 목적지는 호스트를 의미함
- Interface — 해당 경로로 보내기 위한 네트워크 인터페이스 이름
- (리눅스) 라우팅 테이블 설정 일부 — netstat -rn
- 라우팅 규칙
- IP Spoofing
- 개요
- IP를 속이고 통신하는 공격
- 신뢰 관계 이용
- 실습
- /etc/hosts.equiv 파일 — 현재 호스트의 모든 계정에 대해 신뢰 관계를 설정하는 파일
- $HOME/.rhosts 파일 — 현재 호스트의 계정별로 신뢰 관계를 설정하는 파일
- 대응책
- 시스템간 트러스트 설정을 사용하지 않는다
- 필요한 경우 신뢰하는 시스템의 MAC 주소를 정적으로 설정하여 IP 주소만 위조한 접속을 차단한다
- $HOME/.rhosts, hosts.equiv 사용 금지
- 개요
- r 계열 서비스를 통한 원격 접속은 보안상 매우 취약함
- 사용할 경우 $HOME/.rhosts, hosts.equiv에 적절한 보안 조치 필요
- 보안 조치
- /etc/hosts.equiv 및 &HOME/.rhosts 파일 소유자를 root 또는 해당 계정으로 변경
- /etc/hosts.equiv 및 $HOME/.rhosts 파일 권한을 600 이하로 변경
- /etc/hosts.equiv 및 $HOME/.rhosts 파일에서 + 기호를 제거하고 반드시 필요한 호스트 및 계정만 등록
- 개요
- 개요
'정보보안기사' 카테고리의 다른 글
| [정보보안기사(실기)] SECTION 04 네트워크 기본 학습 - UDP, 네트워크 관련 기술, 네트워크 관리 명령어 (1) | 2026.04.19 |
|---|---|
| [정보보안기사(실기)] SECTION 04 네트워크 기본 학습 - ICMP, TCP (1) | 2026.04.17 |
| [정보보안기사(실기)] SECTION 04 네트워크 기본 학습 (1) (0) | 2026.04.15 |
| [정보보안기사(실기)] SECTION 03 윈도우 서버 취약점 (1) | 2026.04.13 |
| [정보보안기사(실기)] SECTION 02 UNIX/Linux 서버 취약점 (1) | 2026.04.09 |