네트워크 계층 Network Layer, IP Header
본문 바로가기

네트워크 계층 Network Layer, IP Header

액트 2019. 5. 23.

@Network Layer - 3계층

 

 

IP Adress

IP 를 도와주는 protocol

(1) ARP - MAC address 확인

(2) ICMP - 신뢰성

(3) IGMP -  그룹정인 정보

 

  통신타입

 

(1) Unicast

Unicast

 

   - A Host가 B Host에게 Data를 전달하는 가장 일반적인 방법

   - Source Address와 Destination Address를 명시하여 해당하는 장비만이 데이터를 처리하는 방법

   - 동일한 정보를 많은 호스트에 전달에는 비 효율적인 방법 => 서버에 부담

      client 가 많으면 많을수록 힘들다.

   - Host to Host 전달을 기반으로 하므로 다른 Host에 부하는 주지 않는다.

   - 받는 사람은 편한대 보내는 사람이 불편

  

일 대 일 전달방식
Destination IP : 192.168.1.3
Destination MAC : 00-09-24-9d-0a-45
Service : Internet

 

(2) Broadcast

 

Broadcast

  - 단일 Host가 Segment에 모든 호스트를 대상으로 Data를 전달하는 방법

  - 목적지 주소를 각 주소에 예약된 Broadcast Address를 입력하여 전달한다. 모든 호스트는 이

    메시지를 수신한다.

  - 동일한 정보를 한번에 모든 호스트에게 전달하는 장점을 갖는다.

  - 많은 Broadcast는 호스트에 성능저하를 가져온다. (나의 대역폭은 한장되어 있는데 계속 받는다)

  - client는 원하지 않는 정보를 받을 수 있다.

  - 보내는 사람은 편한대 받는 사람이 불편 

일 대 전체 전달방식
Destination IP : 255.255.255.255
Destination MAC : ff-ff-ff-ff-ff-ff
Service : TV, Radio

 

 

(3) Multicast

Multicast

 

  - 단일 Host가 예약된 주소 (Multicast Address)

  - 목적지 주소를 각 주소에 예약된 Broadcast Address를 입력하여 전달한다. 모든 호스트는 이

    메시지를 수신한다.

  - 동일한 정보를 한번에 모든 호스트에게 전달하는 장점을 갖는다.

  - 많은 Broadcast는 호스트에 성능 저하를 가져온다.

 

일 대 그룹 전달방식
Destination IP : 224.0.0.22
Destination MAC : 01-00-5e-00-00-16    ( 01-00-5e 로 시작하는 company : Multicast)
Service : Internet방송, Cable TV 

 

 

 

IPv4 Address 32bit 2^32 = 총 4,294,967,296 IP Address
00000000.00000000.00000000.00000000 : 0.0.0.0
11111111.11111111.11111111.11111111 : 255.255.255.255

 

 - IP 관리 -

IANA(IP통합관리,배포) -> 대륙별할당 -> 국가별할당 -> ISP별할당 -> 사용자할당

<참조>
http://www.iana.org
http://www.whoisdomain.kr


IPv4 Address구조
Classfull -> Subneting -> VLSM -> CIDR -> Classless

 

-  Classfull(Class기반) Network -

=> 그룹별로 사용

subnetmask 역할 : 출발지 ip와 목적지 ip 비교를 통해 네트워크 판별(같은 네트워크 인지 다른지)

S:1 ( 00000001 )

SM  (11111100 )  -> 모든 bit 같으면 같은 netwokr, 하나라도 다르면 다른 network

D:2 ( 00000010 )


A Class : 31bit 2^31 = 총 2,147,483,648 IP Address
| Net ID| |                Host ID                |
0xxxxxxx. 00000000. 00000000. 00000000 => IP(주소)
11111111.00000000.00000000.00000000 => Subnetmask(우편번호를 통해 집주소 구별)

                                             -> 8bit 만 검색

네트워크 : 7bit 2^7 = 128Network
00000000~01111111 : 0~127
호스트 : 24bit 2^24 = 16,777,216Host
00000000.00000000.0000000~11111111.1111111.11111111 : 0.0.0~255.255.255


B Class : 30bit 2^30 = 총 1,073,741,824 IP Address
|      Network ID  | |        Host ID        |
10xxxxxx. xxxxxxxx. 00000000. 00000000
11111111.11111111.00000000.00000000           -> 16bit 만 검색

네트워크 : 14bit 2^14 = 16,384Network
10000000.00000000~10111111.11111111 : 128.0~191.255
호스트 : 16bit 2^16 = 65,536Host
00000000.00000000~11111111.11111111 : 0.0~255.255


C Class : 29bit 2^29 = 총 536,870,912 IP Address
|             Network ID       |  |Host ID |
110xxxxx. xxxxxxxx. xxxxxxxx. 00000000
11111111.11111111.11111111.00000000            -> 24 bit 만 검색

네트워크 : 21bit 2^21 = 2,097,152Network
11000000.00000000.00000000~11011111.11111111.11111111 : 192.0.0~223.255.255
호스트 : 8bit 2^8 = 256Host
00000000~11111111 : 0~255


D Class(Multicast) : 28bit 2^28 = 총 268,435,456 IP Address
1110xxxx.xxxxxxxx.xxxxxxxx.00000000
네트워크 : 11100000~11101111 : 224~239
Multicast IP Address로 예약


E Class(실험용) : 28bit 2^28 = 총 268,435,456 IP Address
1111xxxx.xxxxxxxx.xxxxxxxx.00000000
네트워크 : 11110000~1111111 : 240~255
실험용으로 예약
255.255.255.255 : Broadcast IP Address로 예약

 

 

- 예약주소  -

1이 사용, 0 이 사용x

Host ID 전체가 0 이거나 1인 IP는 사용할 수 없다.

Host ID 전체 bit 가 1인거는 전체가 사용중인 것을 나타낸다 (Broadcast Address)

Host ID 전체 bit 가 0인거는 모든 주소공간을 표현 (Subnet Address)


A Class
0.0.0.0(Default Route) : 모든 주소공간을 표현 (우편번호에 지구라고 쓴 것이랑 같다)
127.0.0.1(localhost) : 127.0.0.0~127.255.255.255는 127.0.0.1로 표현

B Class
169.254.0.0~169.254.255.255(Link Local) : DHCP로부터 주소를 할당 받을 수 없는 상태일때 자기

                                                          스스로 주소를 할당하기 위해 사용

E Class
255.255.255.255 : Broadcast IP Address 로 예약


○ 공인 IP => Internet사용가능한 IP, ISP에 등록되어있는 IP
○ 사설 IP => Network사용가능한 IP, ISP에 등록되어 있지 않은 IP

 

- 사설주소 -
A Class
10.0.0.0~10.255.255.255

B Class
172.16.0.0~172.31.255.255

C Class
192.168.0.0~192.168.255.255

 

A Class : 0~127 255.0.0.0 (128/16777216)
B Class : 128~191 255.255.0.0 (16384/65536)
C Class : 192~223 255.255.255.0 (2097152/256)

 

- IP Header -

 

IP header Format

 

version : 4

Type of Service : 우선예약

-> 5가지 (비용, 보완, 처리량, 신뢰성, 지연) 를 고려하여 데이터가 나중에 들어와도 ㅍ먼저 처리 해 주는 기능.

Header Length :data를 제외한 IP 길이

Total Length : 3계층 전체 길이

 

- 같은 곳에서 동시에 여러 data를 보낼때 -

Identifier : 식별자 역할 ( data 구별역할 -> 메신저는 메신져대로, 게임은 게임대로)

Fragmentation Flags : 첫번째bit : 0으로 고정(예약 bit), 가운데 bit : Segment 여부 확인(0:분열,1:분열x) -> Segment 되어 있는 data를 받을 때 처리를 고려하기 위해서.(segment 되어 있는데 기다리지 않고 바로 처리 하면 오류. segment 되어 있지 않다면 즉 01 로 되어 있다면 바로 처리하게 된다) , 마지막 bit : 마지막 data 여부를 파악 (0:마지막, 1:남은 data있음)

ex) 001 : 남은 데이터 있음, 000 : 끝났으니깐 처리, 010 : segment 되어 있지 않은 data 바로 처리. 

Fragment Offset : 순서번호-> 순서대로 들어오지 않고 잘못 들어온 경우를 확인

Time To Live : 라우터 갯수(hop count)

                        ex) 128 개의 라우터를 거칠 수 있다 128개를 넘으면 버려진다.

                         이 갯수는 OS에 의해 결정. windows : 128, linux : 64, unix : 255

                        확인) ping ip addres

ping ip address

                         위 사진에서 TTL=126 인것은 두개의 라우터를 지났기 때문.

=> ICMP Protocol 이 한다.

                   단계별로 확인) tracert -d ipaddress

icmp protocol

 

 

Gateway : 라우터라고 생각하면 된다.

Gateway 에 ping을 쳐 보면 해당 라우터에 OS를 확인할 수 있따..

gateway ping TTL 값

 

위 사진에서의 TTL 값은 64 이므로 리눅스 OS 를 사용하고 있다.

 

'IT > Network' 카테고리의 다른 글

서브넷 IP Subnet-Zero  (0) 2019.05.23
DHCP Server  (0) 2019.05.23
데이터링크 계층 DataLink Layer  (0) 2019.05.23
디스크 관리 - 예상치 않은 오류가 발생했습니다.  (0) 2019.05.23
물리계층 Physical Layer  (0) 2019.05.21

댓글