대학교/데이터통신

데이터통신 - (11) IPv4 (1)

매 석 2023. 6. 6. 01:15
반응형

- 주소 지정

IPv4 주소는 32비트 주소로 라우터나 호스트의 인터넷 연결을 범용적이고 유일하게 만들어준다.

IP 주소는 장치가 다른 네트워크로 이동 시 변경되기에 라우터나 호스트가 아닌 연결의 주소다.

주소 공간은 프로토콜에서 사용 가능한 전체 주소의 수이다.

주소를 정의하기 위해 b비트를 사용한다면, 주소 공간은 2^b가 된다.

- 주소 지정에서 계층구조

접두사 n비트, 접미사 (32-n)비트이다.

접두사는 고정되거나 가변 길이를 가진다.

- 클래스 기반 주소지정

A, B, C, D, E의 5개의 클래스로 주소를 나눌 수 있다.

- 클래스 없는 주소지정

단기적인 관점에서 주소 고갈을 해결하기 위해 클래스 권한이 제거되었다.

CIDR : 슬래시 표기법

네트워크 주소

네트워크 주소는 실질적으로 네트워크의 식별자로 각 네트워크는 네트워크 식별자로 구분된다.

블록 할당

제한 사항 1 : 요청된 주소 수 N은 2의 거듭제곱

제한 사항 2 : 블록 내에는 연속된 숫자의 이용 가능한 주소 공간이 있어야 한다.

서브네팅

서브네팅을 사용하여 더 많은 계층을 만들 수 있다.

120 먼저 할당해주면, 2^7인 128개의 주소로 나눌 수 있다.

즉 n=32-7=25로 구할 수 있다. 즉 14.24.74.0/25~14.24.74.127/25이다.

이런 식으로 남은 주소를 60개는 64로, 10개는 16으로 나누어주면 된다.

주소 집단화

제한 사항1 : 요청된 주소 N은 2의 거듭제곱

제한 사항2 : 블록 내에는 연속된 숫자의 이용 가능한 주소 공간이 있어야 한다.

 

 

- 주 프로토콜과 보조 프로토콜

하나의 주 프로토콜과 3개의 보조 프로토콜로 이루어져 있다.

데이터그램 : IP가 사용하는 패킷

헤더는 한 줄 당 4바이트로, 총 5줄로 이루어져 있다. 여기에 0~40의 옵션이 추가될 수 있다.

데이터 길이는 전체길이 - 헤더길이를 통해서 구할 수 있다.

참고로 페이로드는 상위 계층의 사용자 데이터로

오류 검사 또한 위 계층에서 확인한다.

처음 4비트는 버전을, 이후 4비트는 헤더 길이를 나타낸다.

버전은 문제가 없지만, 헤더 길이는 2*4=8로 문제가 있다.

헤더 길이는 최소가 5가 되어야 한다. (기본 헤더가 20바이트이기 때문)

이 값은 8*4= 32이다.

기본이 20이기에 옵션은 12바이트이다.

0028을 2진수로 나타내면 101000 즉 40바이트다.

그래서 40-20을 한 20바이트만 데이터 전송이 된다.

- 단편화

데이터그램은 다른 네트워크를 통해 전달될 수 있다.

각 라우터는 수신한 프레임에서 데이터그램을 역캡슐화하고 처리한 후 다른 프레임으로 캡슐화 한다.

첫 번째 바이트의 번호는 100*8=800이다. 총 길이는 100바이트고, 헤더 길이는 5*4인 20바이트이다.

즉 데이터그램 안에 80바이트가 있다. 그렇기에 마지막 바이트의 번호는 879이다.

-MTU

최대 전송 단위를 의미한다.

 

- 옵션

 

데이터그램의 헤더는 고정된 부분과 가변 부분 두 가지로 구성된다.

고정 부분은 20바이트 길이며, 가변 부분은 최대 40바이트까지 될 수 있는 옵션이다.

- 단일 바이트 옵션

무동작, 옵션 종료

- 다중 바이트 옵션

경로 기록, 엄격한 발신지 경로, 유연한 발신지 경로, 타임스탬프

- 보안

스니핑, 스푸핑 패킷 변조 등의 공격이 있다.

그래서 IPSec를 사용하여 패킷을 보호할 수 있다.

 

 

- ICMPv4

IPv4 프로토콜은 오류 보고와 오류 정정 기능이 없다.

ICMPv4는 위의 두 가지 단점을 보완하였다.

- 오류 보고 메시지

라우터나 호스트가 IP 패킷을 처리하는 도중 탐지하는 문제를 보고한다.

1. 목적지 도달 불가

2. 발신지 억제

3. 재지정 메시지

4. 매개변수 문제

- 조회 메시지

호스트나 네트워크 관리자가 라우터나 다른 호스트로부터 특정 정보를 획득하기 위해 사용한다.

1. 에코 요청 및 응답

2. 타임스탬프 요청 및 응답

3. 주소 마스크 요청 및 응답

4. 라우터 독립 및 광고

- 디버깅 도구

Traceroute 또는 Tracert를 사용하여 발신자에서 목적짖까지 패킷의 경로를 추적할 수 있다.

이는 시간 초과와 목적지 도달 불가 오류 보고 메시지로부터 정보를 얻는다.

ICMP 검사합은 전체 메시지에 걸쳐 계산된다.