본문 바로가기
Network

[Network] 2/3 강의정리(ACK, TCP 4-way handshake, UDP, ICMP, ICMP, Ping, IPv4, 서브넷팅, CIDR,

by jionee 2021. 2. 3.
SMALL

정상적인 트래픽 전송 과정

ACK# = SEQ#+DataSize

 

ex) SEQ# : 5000(Data Size : 500)

-> ACK# : 5500

SEQ# : 5500(Data Size: 600)

-> ACK# : 6100

SEQ# : 6100(Data Size:400)

-> ACK# : 6500

 

 

비정상적인 트래픽 전송 과정

ACK#   !=   SEQ#+DataSize

 

ex) SEQ# : 5000(Data Size : 500)

-> ACK# : 5000

 

 

 

TCP 연결 종료(4-way Handshake)

 

 

 

UDP (User Datagram Protocol)

Connectionless Protocol

: Data 전송을 위해 사전에 필요한 Process가 없음

 

Best-Effort Delivery

: 신뢰성 보장못함

 

헤더 구조

 

 

TCP와 UDP 비교

 

 

ICMP(Internet Control Message Protocol)

- IP Protocol은 송신시스템과 수신시스템 사이의 패킷을 최적의 경로를 통해 전달하는 것이 주된 목적

- IP Protocol은 신뢰성이 없고 비연결형 Protocol

- IP Protocol은 에러 발생 원인이나 진단 기능 및 상황 정보를 지원하지 않음

-> ICMP Protocol Support(IP의 단점 보완)

 

 

 

ICMP 메시지 종류

오류 보고 메시지
: IP 패킷 처리 도중 발생한 문제 보고

 

질의 메시지

: 다른 호스트로 부터 특정 정보 획득

: 네트워크 문제 진단

 

 

 

ICMP 메시지 형식

- 총 8비트로 구성

- Type : ICMP의 업무, 즉 어떠한 용도로 사용되는 ICMP를 나타냄

- Code : ICMP Type의 세부 내용을 나타내며 이 부분은 Type과 조합을 이루어 ICMP 메시지의 목적과 용도를 나타냄

- Checksum : ICMP 메시지의 이상 유무 판단

 

 

 

ICMP Code

 

 

 

Ping

soyammou.tistory.com/5

 

Ping의 다양한 option 사용법-1 (Windows)

Ping에 대해 간단한 설명 드렸었는데요 2018/04/23 - [Analysis/Network] - Ping & Traceroute 2018/04/24 - [Analysis/Network] - Ping의 다양한 option 사용법 2-1 (Linux) 이번에는 옵션에 관하여 정리하도록..

soyammou.tistory.com

 

 

 

IPv4 Address의 비트열

- 총 4바이트(32비트)

- (.)을 기준으로 옥텟 구성, 1옥텟은 8비트 (4개의 옥텟으로 구성)

 

 

 

비트 별 자리값(weight)

 

 

 

 

 

10진수를 8비트 2진수로 변환

10진수를 2진수 자리 값으로 밸셈을 함

사용된 2진수 자리 값을 1로, 사용되지 않은 자리 값은 0으로 변환

 

 

 

 

IPv4 Address 특징

- IP 주소는 총 5개의 Class로 구분

- 각 Class는 네트워크ID와 호스트 ID가 다르게 구성

- IP Address는 고유해야함

 

 

IPv4 Class 분류

IP add = Network ID.hostID

 

- IP 주소는 총 5개의 Class로 구분

W.X.Y.Z

 

A class :: 1~126  (최상위 비트가 0으로 시작)

W.X.Y.Z         서브넷 마스크 : 255.0.0.0

 

B class :: 128~191  (최상위 비트가 10으로 시작)

W.X.Y.Z         서브넷 마스크 : 255.255.0.0

 

C class :: 192~223 (최상위 비트가 110으로 시작)

W.X.Y.Z         서브넷 마스크 :  255.255.255.0

 

D class :: 224~239 멀티캐스트에서 사용    

E class :: 240~255  IPv6가 나옴에 따라 사용하지 않음     

 

- 첫 번째 octet 값에 따라 IP의 클래스를 정의

 

 

Subnet Mask

서브넷마스크 : 네트워크 비트=1, 호스트비트=0 으로 채움

 

 

네트워크 주소

- 네트워크를 대표하는 주소 즉, 그룹주소

- 호스트 ID 비트가 모두 0인 주소

 

 

브로드캐스트 주소

네트워크 내의 불특정 다수에게 트래픽을 전송하기 위한 주소

 

- Limited Broadcast 주소

: 네트워크 ID 비트와 호스트 ID 비트가 모두 1인 주소

255.255.255.255

 

- Direct Broadcast 주소

: 호스트 ID 비트가 모두 1인 주소

ex) 172.16.255.255 (B클래스)

192.168.1.255 (C클래스)

 

 

 

사용 가능한 IP 주소

2^h-2 ( h : 호스트 ID비트 수)

Class 사용가능한 Host ID의 개수
A Class 2^24-2 = 16,777,214
B Class 2^16-2 = 65,534
C Class 2^8-2 = 254

 

 

 

Loopback 주소

Network 부분의 값이 Class A에 속한 127이며 호스트 부분의 값은 지정되지 않은 값

패킷 송수신 과정에 대한 시스템 내부 test시 주로 사용

 

 

 

사설/공인 IP Address

- 사설 IP 주소

: 인터넷과 연동되지 않은 사적인 독립 네트워크(Private IP Network)에서 사용되는 사적인 주소

: 인터넷 상에서 사용할 수 없음을 의미

: Class 별 사설 Ip 주소 대역(IETF RFC 1918)

1. A Class : 10.x.x.x

2. B Class : 172.16.x.x~172.31.x.x

3. C Class : 192.168.x.x

 

- 공인 IP 주소

: 사설 IP주소를 제외한 주소

 

 

 

NAT 기능

- 네트워크 주소 변환(Network Address Translation)

- 송신지 또는 수신지 IP address를 다른 주소로 변환

- Source NAT(SNAT)와 Destination NAT(DNAT)

 

 

 

브로드캐스트 도메인

- 브로드캐스트 패킷 전달 영역/범위

- 브로드캐스트 도메인 크기가 큼

: 호스트 당 수신되는 브로드캐스트 패킷 수가 많을 경우

- A Broadcast domain = A Network

 

 

 

브로드캐스트 도메인 크기

호스트 당 수신되는 브로드캐스 패킷 수가 많을 경우

     - Network에 연결된 모든 장비의 성능 저하

     - 문제해결 어려움

     - 관리비용 증가

-> 브로드캐스트 도메인 크기를 줄임

-> 서브넷팅

 

 

 

서브넷팅(Subnetting)

- 브로드캐스트 도메인의 크기를 줄이는 기술

- 브로드캐스트 트래픽을 제어

- 기존 보다 그룹수가 늘어나지만 그룹당 포함되는 호스트수를 주임

- 네트워크 자원을 효율적으로 사용해 네트워크 성능향상

    네트워크 자원  :  Bandwidth, 장비 사용률

- 관리 비용 감소

 

 

 

 

CIDR 표기법

- Classless Inter-Domain Routing의 약자

- 서브넷 마스크 표기 방법

- 네트워크 ID 비트 개수를 서브넷 마스크로 표시

- /네트워크ID비트수

(예) 255.255.255.0 -> 1의 개수가 24개 이므로 CIDR표기는 /24

255.255.0.0 -> 1의 개수가 16개 이므로 CIDR표기는 /16

 

 

 

CIDR 기반의 서브넷팅

적용예) 192.168.1.0/24 -> 192.168.1.0/26

- 디폴트 서브넷 마스크에서 네트워크 ID 비트수를 늘리고 호스트 ID 비트 수를 줄이는 것

: 디폴트 그룹보다 그룹 수 증가

: 그룹당 호스트 수 감소

 

 

서브넷팅 적용 예제

192.168.1.0/26은 그룹수: 그룹당 호스트수 = 4:62

- Subnet ID bit 수가 2개이므로 생성가능한 그룹 수 : 2^2 = 4

- Host ID bit 수가 6개이므로 생썽가능한 호스트수 : 2^6-2 = 62

 

 

정리

Network 주소

호스트 ID 비트가 모두 0인 주소

 

Direct Broadcast 주소

호트트 ID 비트가 모두 1인 주소

 

Limited Broadcast 주소

255.255.255.255

DHCP 클라이언트가 DHCP 서버를 찾을 경우 사용

 

Loopback주소

Class A에 속한 127이며 호스트 부분의 값은 지정되지 않은 값

패킷 송수신 과정에 대한 시스템 내부 테스트시 주로 사용

 

 

 

연습문제1 - 192.168.1.0/26일 때 다음중 컴퓨터에게 할당 가능한 IP는?

1. 192.168.1.128 

2. 192.168.1.140

3. 192.168.1.191

더보기

-> 2번

1번은 네트워크 주소, 3번은 브로드캐스트 주소

 

 

연습문제2  - 17.5.13.180/28일 때

1. 10진수 서브넷 마스크

2. 네트워크 주소

3. 브로드캐스트 주소

4. 17.7.13.180은 해당 네트워크의 몇번째 PC인가?

더보기

->

1 : 255.255.255.240 (/28 = /24+4)

2 : 17.5.13.176  (00010001.00000101.00001101.10110000)

3 : 17.5.13.191  (00010001.00000101.00001101.101111111)

4 : 4번째 PC    (네트워크주소를 제외하고 177,178,179,180이기 때문)

 

 

연습문제 3 - 12대의 호스트에게 IP를 할당하기 위한 서브넷 마스크

1) 12+2 = 14 ( 12는 호스트 개수,  14는 전체 필요한 개수)

2) 2^4 = 16  (4는 호스트 ID 비트 수)

3) 32-4 = 28 (28은 네트워크 ID 비트 수)

4) /28 -> /24+4 -> 255.255.255.240

 

 

연습문제 4 - 6대의 호스트에게 IP를 할당하기 위한 서브넷 마스크

1)  6+2 = 8 ( 6은 호스트 개수,  8은 전체 필요한 개수)

2) 2^3 = 8  (3은 호스트 ID 비트 수)

3) 32-3 = 29 (29는 네트워크 ID 비트 수)

4) /29 -> /24+5 -> 255.255.255.248

 

 

 

연습문제 5 - 네트워크 192.168.1.0를 8개의 네트워크로 분할 시 사용되는 서브넷 마스크

1. 2^3 = 8 (3은 서브넷 ID 비트 수, 8은 그룹 개수)

2. 24 + 3 = 27 (24 :C클래스, 3 : 네트워크 ID 비트 수)

3. /27  = /24 +3  255.255.255.224

 

 

 

댓글