Layer 4. Transport Layer

 

Transport 계층은 서비스를 구분하고 데이터 통신방식을 결정하는 계층이다.

4계층은 데이터를 생성하는 상위계층과 데이터를 전달해주는 하위계층을 연결해주는 역할을 담당하고 있다. 상위계층의 서비스들을 구분하여 정확하게 서비스를 제공받을 수 있도록 도와주며, 데이터의 성격에 따라 통신방식을 달리하여 효율적으로 통신될 수 있도록 의사결정을 해준다.

 

 

1. 서비스 구분 번호

Port number

: 포트번호는 서비스 구분 번호라고도 불리는 Transport 계층의 주소이다. Application 계층에서는 다양한 서비스를 제공받고 제공하고 있으며 이러한 서비스들을 구분하기 위해 숫자로 식별값을 부여했는데 이를 Port number라고 한다.

총 0 ~ 65535번의 값을 사용하고 이 중에서 0 ~ 1023번은 가장 빈번하게 사용되는 대표적인 프로토콜에게 할당되어 있다. 잘 알려진 포트번호라는 뜻으로 Well-known port number라고 한다. 이 뒤의 주소는 랜덤포트번호라고 하고 이 중에서도 상용 어플리케이션들이 IANA에 등록하고 사용하는 등록번호(Registered number)가 1024 ~ 49151번으로 따로 구분되어 있다.

 

대표적인 Well-known Port

Protocol

Rule

Port

DNS

 도메인과 IP 변환해주는 서비스

53 / UDP

DHCP

 IP 자동할당 서비스 프로토콜

67,68 / UDP

FTP

 (대용량) 파일 전송 프로토콜

20(data),21(control) / TCP

TFTP

 (소용량) 파일 전송 프로토콜

69 / UDP

HTTP

  서비스 프로토콜

80 / TCP

HTTPS

 보안 서비스 프로토콜

443 / TCP

Telnet

 원격접속 프로토콜

23 / TCP

SSH

 보안 원격접속 프로토콜

22 / TCP

 

 

 

데이터 통신 방식 결정

TCP (Transmission Control Protocol)

: 신뢰성을 가지고 있지만 통신속도가 UDP보다 느린 통신방식이다.

데이터를 보내기 전에 통신이 가능한 상태인지를 확인하고, 데이터를 전달하면서 정확하게 전달이 되었는지 통신상태를 확인해주는 확인응답인 ACK 패킷을 지속적으로 전달하는 절차를 가지고 있어서 신뢰성이 있는 프로토콜이라고 부른다. 이처럼 신뢰성을 제공하기 때문에 오류제어와 흐름제어와 같은 기능을 제공한다.

 

오류제어

 : 데이터 전달에서 오류 또는 손실이 발생된 경우, 해당 데이터를 재전송하여 처음부터 끝까지 정확하게 모든 데이터를 전달할 수 있도록 제어하는 기능

 

흐름제어

 : 빠른 통신을 위해 여러 세그먼트를 한꺼번에 주고 하나의 ACK를 받아 통신할 수 있는데, 이 때 수신 장비가 받을 수 있는 데이터의 양을 표시하여 효율적으로 데이터 통신이 일어날 수 있도록 흐름을 제어해주는 기능

 

TCP 3Way-Handshake 

 : Host A와 Host B가 통신을 하기 전에 가장 먼저 하는 일은 통신을 할 수 있는 상태인지를 체크하는 것이다.

사람이 만나서 용건을 얘기하기 전에 서로의 이름을 밝히고 악수부터 나누는 것처럼 TCP로 통신할 장비들도 데이터를 보내기 전에 3번에 걸쳐서 인사(통신확인)를 한다. 그걸 3Way-handshake라고 한다.

 

Host A가 Host B에게 먼저 통신이 되는지 물어본다.

Host A : 야, 너 내말 들려? (SYN)

//Send SYN - SYN flag를 1로 표시하고 랜덤한 숫자를 Sequence number필드에 넣어 전송한다

 

Host B는 이에대한 응답을 보내며 자신도 통신이 되는지 확인하는 값을 보낸다.

Host B : 응, 니말잘들려.(ACK)

            내말은 잘들려?(SYN)

//Send SYN,ACK - SYN과 ACK flag를 1로 표시하고 전달받은 Seq값에 1을 더해 ACK값으로 넣고 랜덤한 숫자를 Sequence필드에 넣어 전송한다.

 

Host A는 Host B가 준 SYN에 응답해주고 서로 연결이 잘 되어있다는 것의 확인을 마친다.

Host A : 니말도 잘들려.(ACK) 

//Send ACK - Host B에게 응답을 보낸다.

 

 

UDP (User Datagram Protocol)

: 신뢰성이 없는 대신 빠른속도로 통신되는 특징을 가진 통신방식이다.

소용량의 데이터를 전송해야 되는 데이터들은 TCP처럼 세션을 맺어 통신하면 너무 속도가 느려지고 비효율적이다. 이런 경우에는 UDP를 사용하여 통신하는 것이 좋다.

 

또한 음성이나 영상같이 속도에 민감하면서 데이터 재전송이 일어나면 안되는 데이터들도 UDP를 사용하는 것이 효율적이다. 만약 TCP를 사용하면 속도가 떨어져서 실시간으로 데이터 전달이 어려워지고, TCP처럼 손실된 데이터를 재전송하게 되면 음성이나 영상 데이터가 뒤죽박죽으로 뒤섞여 제대로 데이터를 받아볼 수 없을 것이다.

 

 

'Network > TCP-IP' 카테고리의 다른 글

ICMP (Internet Control Message Protocol)  (0) 2014.12.08
ARP (주소결정프로토콜)  (5) 2014.08.07
Wildcard-Mask (와일드카드 마스크)  (6) 2014.07.26
서브넷팅 (Subnetting)  (5) 2014.07.22
Subnet-Mask (서브넷 마스크)  (0) 2014.07.21

ICMP (Internet Control Messege Protocol)

 

ICMP 인터넷 프로토콜의 주요 프로토콜 하나로서, 통신의 연결성을 확인하고 에러 메시지를 받을 사용되는 프로토콜이다4계층의 TCP/UDP와는 다르게 데이터를 주고받을 때나 사용자 어플리케이션을 위해 사용되지 않는다.

 

신뢰성이 없는 IP프로토콜을 대신하여 연결성을 확인하는데 사용하고, 문제가 생긴 구간의 원인을 파악하기 위해 에러 메시지를 체크하기 위해 사용하기도 한다. 또한 패킷이 전달되는 경로를 추적하여 라우팅 경로를 확인하는 용도로 사용할 있다.

 

 

 

ICMP 구조

 

Type

ICMP type (Control messages 참조)

Code

ICMP subtype 나타냄 (Control messages 참조)

Checksum

헤더와 데이터를 계산하여 데이터의 에러를 체크.

Rest of Header

ICMP type code 바탕으로 분류된 컨텐츠

Data

IPv4헤더의 전반적인 부분을 담은 ICMP 에러 메시지 데이터와 에러를 발생시킨 IPv4 패킷 데이터의 8byte

 

 

Control messages

Type

Code

Description

0 Echo Reply

0

Echo reply (used to ping)

1 and 2

 

Reserved

3 Destination Unreachable

0

Destination network unreachable

 

1

Destination host unreachable

 

2

Destination protocol unreachable

 

3

Destination port unreachable

 

4

Fragmentation required, and DF flag set

 

5

Source route failed

 

6

Destination network unknown

 

7

Destination host unknown

 

8

Source host isolated

 

9

Network administratively prohibited

 

10

Host administratively prohibited

 

11

Network unreachable for TOS

 

12

Host unreachable for TOS

 

13

Communication administratively prohibited

 

14

Host Precedence Violation

 

15

Precedence cutoff in effect

4 Source Quench

0

Source quench (congestion control)

5 Redirect Message

0

Redirect Datagram for the Network

 

1

Redirect Datagram for the Host

 

2

Redirect Datagram for the TOS & network

 

3

Redirect Datagram for the TOS & host

6

 

Alternate Host Address

7

 

Reserved

8 Echo Request

0

Echo request (used to ping)

9 Router Advertisement

0

Router Advertisement

10 Router Solicitation

0

Router discovery/selection/solicitation

11 Time Exceeded

0

TTL expired in transit

 

1

Fragment reassembly time exceeded

12 Parameter Problem: Bad IP header

0

Pointer indicates the error

 

1

Missing a required option

 

2

Bad length

13 Timestamp

0

Timestamp

14 Timestamp Reply

0

Timestamp reply

15 Information Request

0

Information Request

16 Information Reply

0

Information Reply

17 Address Mask Request

0

Address Mask Request

18 Address Mask Reply

0

Address Mask Reply

19

 

Reserved for security

20 through 29

 

Reserved for robustness experiment

30 Traceroute

0

Information Request

31

 

Datagram Conversion Error

32

 

Mobile Host Redirect

33

 

Where-Are-You (originally meant for IPv6)

34

 

Here-I-Am (originally meant for IPv6)

35

 

Mobile Registration Request

36

 

Mobile Registration Reply

37

 

Domain Name Request

38

 

Domain Name Reply

39

 

SKIP Algorithm Discovery Protocol, Simple Key-Management for Internet Protocol

40

 

Photuris, Security failures

41

 

ICMP for experimental mobility protocols such as Seamoby [RFC4065]

42 through 255

 

Reserved

 

출처: <http://en.wikipedia.org/wiki/Internet_Control_Message_Protocol>

'Network > TCP-IP' 카테고리의 다른 글

4계층(Transport) 세부설명  (8) 2019.08.20
ARP (주소결정프로토콜)  (5) 2014.08.07
Wildcard-Mask (와일드카드 마스크)  (6) 2014.07.26
서브넷팅 (Subnetting)  (5) 2014.07.22
Subnet-Mask (서브넷 마스크)  (0) 2014.07.21

ARP (Address Resolution Protocol)

 

ARP를 그대로 풀어서 해석하면 주소결정프로토콜 이라는 뜻이다. 


일반적으로 통신은 사용자가 어떤 값을 생성하여 전달하거나 어떤 정보를 요청하기 위해 동작을 시킬때 발생된다. 

즉, 통신을 위해 필요한 일련의 값들을 사용자가 결정하여 입력을 시켜준다는 뜻이다. 4계층에서 필요한 서비스 구분번호는 어플리케이션을 동작시키면서 입력이 되고, 3계층에서 사용하는 IP주소까지는 사용자가 통신하기 위해서 디바이스에 입력하기 때문에 어렵지 않게 Encapsulation 가능하다하지만 2계층에서 필요한 목적지 주소는 따로 입력이 되지 않아서 주소를 디바이스 스스로 결정해주어야 한다. 이 때 사용하는 프로토콜이 ARP이다. 


정리하면,

ARP 논리적인 IP주소를 기반으로 (데이터링크 계층의)물리적인 MAC주소로 바꾸어 주는 주소해석 프로토콜이다.

2계층에서 물리적 주소를 사용하여 통신하는 경우 목적지 주소를 알아와 Encapsulation  완성하기 위한 목적으로 쓴다.

 

  

 

 

IP 이용하여 MAC주소를 알아내기 위해 연결된 모든 장비에게 Request 메시지를 보내고, ARP Request 메시지를 받은 장비들은 누구에게 전달된 Request인지 IP주소를 확인하여 자신의 IP 경우 Reply 보내준다.

 

ARP 프로토콜은 Request 보내기 위해 브로드캐스트 방식을 사용한다.

목적지 IP주소가 같은 네트워크일 경우에는 해당 장비를 직접 찾는 Request 메시지를 브로드캐스트로 보내고,

다른 네트워크일 경우에는 직접 브로드캐스트를 보낼수 없으니 Gate-way 데이터를 전달하기 위해 GW에게 Request 보낸다.


, 브로드캐스트가 도달할 없는 다른 네트워크에는 ARP 직접 보낼 수가 없다.

 

 

 

ARP Header

 

 

Hardware

사용 중인 물리 주소나 데이터 링크 유형을 정의

사용 가능한 전체 물리주소 유형 필드값

Protocol

사용 중인 프로토콜 주소 유형의 정의

Hardware Address Length

해당 패킷에 사용되는 물리 주소의 길이(byte)를 정의

Protocol Address Length

패킷에 사용되는 프로토콜 주소의 길이를 정의

Opcode

요청이나 응답 패킷인지와 발생하는 주소 해결 유형을 정의

Sender Hardware Address

요청하는 장비의 L2 계층의 물리 주소를 표현

Sender Protocol Address

요청하는 장비의 L3 계층의 논리 주소를 표현

Target Hardware Address

수신하는 장비의 하드웨어 주소를 표시

Target Protocol Address

수신하는 장비의 L3계층의 논리 주소를 표현

 

 

ARP Cache Table

 

ARP MAC주소를 알아오는 과정에서 브로드캐스트 방식을 사용하는데, 브로드캐스트는 많이 일어날 수록 장비의 과부하와 성능저하를 가져오기 때문에 좋지 못하다. 그래서 한번 알아온 정보는 ARP table 일정시간 동안 저장하고, 통신하고자 하는 목적지의 MAC주소가 ARP table 저장되어있는 경우에는 ARP 프로토콜이 동작되지 않는다.

 

WIN7 이전버전들은 캐시에 저장된 정보들이 2분동안 유지되고 2분씩늘어나 최대 10분간 저장된다

   WIN7은 기본으로 10분 동안 유지되고, 유닉스는 5.

 

 

arp -a 라는 명령어를 사용하여 저장되어 있는 ARP Mapping 정보를 확인할 있고, ARP 프로토콜을 사용하여 알아온 동적인 정보는 Dynamic (또는 동적) 이라고 표시된다브로드캐스트의 단점을 보완하기 위해 관리자가 직접 명령어를 이용하여 수동 입력할 있고, 그런 경우에는 Static (또는 수동) 이라고 표시된다.

 


 

ARP의 종류

1. ARP (위에서 설명되어진 ARP 프로토콜)


2. RARP

RARP는 ARP의 반대 개념으로, MAC주소로 IP주소를 가져오는 것을 말한다.

일반적으로 IP주소는 하드디스크 내의 구성파일에 의해 설정되지만, 하드디스크가 없는 X터미널이나 워크스테이션의 경우, 초기 가동될 자신의 MAC주소를 담아 RARP Request 보내서 IP주소 정보를 받아오게 하기 위해 사용했다.


3. Proxy ARP

Proxy ARP는 호스트에 게이트웨이가 설정되어 있지 않은 경우에 사용된다.

이는 라우터가 ARP 프레임을 수신했을 때, 해당 네트워크가 자신의 라우팅 테이블에 있으면 라우터 자신의 MAC주소를 알려주는 기능을 말한다.


4. Inverse ARP

Frame-Relay 환경에서 송신지 IP와 목적지 DLCI를 맵핑하여 FR MAP에 저장하는데, 처음연결을 한 경우 해당 목적지 IP에 대한 정보가 없으므로 자신과 연결된 모든 선로로 멀티플렉싱을 해 목적지 IP를 알아내는 것을 말한다.


5. Gratuitous ARP

같은 네트워크에서 IP주소가 중복되는지 확인하고 다른 장치들이 자신의 IP 주소를 갱신하도록 주기적으로 IP주소를 알려주는 역할을 한다.



'Network > TCP-IP' 카테고리의 다른 글

4계층(Transport) 세부설명  (8) 2019.08.20
ICMP (Internet Control Message Protocol)  (0) 2014.12.08
Wildcard-Mask (와일드카드 마스크)  (6) 2014.07.26
서브넷팅 (Subnetting)  (5) 2014.07.22
Subnet-Mask (서브넷 마스크)  (0) 2014.07.21

Wildcard-Mask 란

 

Wildcard-mask 특정 IP주소나 네트워크를 추출하기 위해서 사용하는 필터값이다. Subnet-mask 마찬가지로 0 1 필터할 비트를 구분짓는데 사용하고, 0 1 역할은 다음과 같다.

 

 

위의 말을 다시 쓰면,

Wildcard-Mask 0으로 표시된 부분의 bit 숫자여야만 한다 라는 의미이다.

Wildcard-Mask 1 표시된 부분은 0 오던 1 오던 상관하지 않겠다 의미이다.

 

예를 들어, 1.1.1.0/24 이라는 네트워크 주소를 와일드카드 마스크로 범위를 지정하면

 

IP Address =>   00000001.00000001.00000001.00000000

Wildcard.M =>  00000000.00000000.00000000.11111111

 

Wildcard-Mask 0으로 bit 숫자인 0 0이어야 하고 1 오면 안된다.

첫번째 옥텟의 마지막 bit 숫자 1 Wildcard-Mask 0으로 표시되어 있으므로 1 와야 한다는 뜻이 된다. 그래서 Wildcard-Mask 0으로 모두 채워진 옥텟의 IP주소는 고정이 된다.

 

마지막 옥텟은 Wildcard-Mask 모두 1 채워져 있다. 마지막 옥텟의 8bit 모두 0 오던 1 오던 상관하지 않겠다는 뜻이 되어 최소 숫자인 0부터 최대 숫자인 255까지의 범위를 나타내게 된다.

 

, Wildcard-Mask 0 위에 표시된 IP주소의 숫자가 지정된 숫자가 맞는지 검사하라는 뜻을 가지고 1 어떤 것이 와도 상관이 없으니 검사하지 않고 무시하라는 뜻을 가진다.

 

 

 

모든 Address Bit 검사

- 32bit를 모두 검사하여 지정한 IP가 모두 일치하는지를 검사하도록 하는 방식

- 즉 하나의 IP 주소만 골라내어 지정하는것을 뜻한다.

 

 

 

모든 Address Bit 무시

- 모든 bit에 어떤 숫자가 오던 상관이 없으니 검사할 필요가 없으니 무시하라는 마스크 값

- 즉 모든 IP라는 뜻으로 해석할 수 있다.

 

 

특정 범위 지정

 

Wildcard-Mask 0 1 Subnet-Mask 달리 순서에 상관이 없다.

위의 예시는 16~31까지의 범위를 나타내는 Wildcard-Mask이다.

 

만약 17~31까지의 범위 중에서 홀수의 IP주소만 골라내고 싶다고 한다면 아래와 같이 표시할 있다.

 

17 2진수          0 0 0 1 0 0 0 1

Wildcard-Mask     0 0 0 0 1 1 1 0

 

파란색으로 표시된 부분만 고정 시키고, 나머지 3bit 0 또는 1 오도록 한다면 17~31 홀수의 IP 골라낼 있다.

 

Wildcard-Mask는 Subnet-Mask의 보수이다. 

그렇기 때문에 Subnet-mask로 표시된 0과 1을 뒤집으면 IP의 범위를 Wildcard-mask로 지정할 수 있다. 만약 2진수로 계산하는 것이 어렵다면 255.255.255.255 에서 해당 Subnet-mask를 빼는 방법으로 쉽게 구할 수 있다.

 

 

'Network > TCP-IP' 카테고리의 다른 글

ICMP (Internet Control Message Protocol)  (0) 2014.12.08
ARP (주소결정프로토콜)  (5) 2014.08.07
서브넷팅 (Subnetting)  (5) 2014.07.22
Subnet-Mask (서브넷 마스크)  (0) 2014.07.21
3계층 보충-IPv4  (2) 2014.07.21

IPv4의 Subnetting 

 

서브넷팅이 필요한 이유 

1. IP주소를 효율적으로 사용하여 낭비를 막기 위해서

2. 네트워크를 분리하여 보안성 강화를 위해서

 

만약 하나의 부서에서 필요한 IP주소의 개수는 6개인데 C class 주소대역대 하나를 할당해준다면... 

할당된 IP 개수는 256개로 낭비되는 IP 많아진다. 따라서 남는 IP 필요한 곳에 사용할 있도록 네트워크를 분할하는 작업이 필요하다.

 

 

FLSM (Fixed Length Subnet Mask)

고정된 크기의 Subnet-Mask를 사용하는 방식. 즉, 동일한 크기의 Subnet으로 나누는 방식을 말한다.

 

Subnetting 하는 방법

서브넷을 나누기 전에 각각의 네트워크에서 필요한 호스트의 또는 필요한 네트워크 수를 파악하여 필요한 만큼으로 서브넷을 나누어 서브넷마스크를 변경한다.

 

예를 들어, 218.128.32.0/24 라는 네트워크 주소 하나를 25개씩의 호스트가 있는 각각의 네트워크로 분할하려고 한다면, 

하나의 네트워크 주소를 어떻게 필요에 따라 여러 개의 작은 네트워크로 나눌 있는지 알아보자. 

 

먼저 218.128.32.0 이라는 서브넷 주소와 서브넷 마스크를 2진수로 바꾸어 본다.

ip address    :    11011010.10000000.00100000.00000000

subnet mask :    11111111.11111111.11111111.00000000

 

위에서 서브넷마스크가 1 표시된 부분은 모두 Network-ID 사용된 부분이니 부분은 건들지 않고, 0으로 표시된 Host-ID 부분을 가지고 서브넷팅을 한다. 

 

하나의 옥텟은 8bit 이루어져있고, 하나의 bit 2개의 정보를 표현할 있다.

25개의 호스트에 ip 개씩 할당해주려면 네트워크당 ip 최소 25 이상은 있어야 하므로, 5개의 bit 필요하다.

(5bit로는 32개의 정보를 나타낼 수 있다.   2의5승 = 32) 

 

기존의 Host-ID 부분을 필요한 개수인 5개의 bit 세어 자른다.

호스트의 수가 기준인 경우에는 오른쪽에서부터 세고, 네트워크의 수가 기준인 경우는 왼쪽에서 센다.

218.128.32.000|00000

      ←--Net---|-Host

나뉘어진 부분을 기준으로 왼쪽은 Net-ID, 오른쪽은 Host-ID 된다.

 

호스트 부분의 5개의 bit 표현할 있는 수의 범위를 구해보면 아래와 같다.

0 ~ 31        (218.128.32.0 ~ 218.128.32.31)

32 ~ 63      (218.128.32.32 ~ 218.128.32.63)

64 ~ 95      (218.128.32.64 ~ 218.128.32.95)

96 ~ 127     (218.128.32.96 ~ 218.128.32.127)

128 ~ 159   (218.128.32.128 ~ 218.128.32.159)

160 ~ 191   (218.128.32.160 ~ 218.128.32.191)

192 ~ 223   (218.128.32.192 ~ 218.128.32.223)

224 ~ 255   (218.128.32.224 ~ 218.128.32.255)

 

범위가 서로 다른 네트워크를 의미하고, 범위 안의 숫자들은 네트워크 안에서 호스트로 할당해줄 있는 IP 범위가 된다. 범위 앞이 네트워크의 대표주소가 되고, 마지막 숫자가 브로드캐스트 숫자가 된다.

 

, 첫번째 범위를 보면 0 ~ 31 까지의 호스트를 가질 있다. 범위의 서브넷을 써보면 218.128.32.0 이라고 있고, prefix 네트워크의 bit수가 3개가 늘었기 때문에 /24 아닌 /27 된다.

 

 

 

VLSM (Variable Length Subnet Mask)

서브넷팅을 있다면, VLSM 어렵지 않다.

지금까지 설명한 서브넷팅은 동일한 크기로 네트워크를 나누는 방식이었고, VLSM 동일하지 않은 크기로 나누는 방식을 말한다. 

 

예를 들어 한 회사에 A, B, C 라는 세 개의 부서가 있고 그 부서마다 사용하고 있는 호스트의 수가 다르다고 가정해보자.

A부서 : 100개의 Host

B부서 : 25개의 Host

C부서 : 2개의 Host

 

세 부서에게 나눠주기 위해 FLSM으로 서브넷팅을 하는 경우 가장 큰 범위인 A부서의 Host수에 맞춰서 자르게 되고, 다른 부서에서는 사용하고 낭비되는 주소가 너무 많아지게 된다. 또한 필요한 IP의 수는 총 133개인데 A부서 기준으로 서브넷팅을 하면 C클래스 하나로 나누지 못하여 B클래스의 주소가 필요하다.

 

위와 같은 상황이 생기지 않도록 각 부서별로 필요한 만큼만 잘라서 사용하고 남은 주소 범위에서 또 다시 서브넷팅을 하여 할당하는 방식으로 각 네트워크 범위를 구해보자. 단, 서브넷팅을 할 때는 큰 범위부터 자르는 것이 효율적이다.

(예제 IP : 200.1.1.0/24)

 

A부서 : 필요한 IP개수 총 102개

102개의 IP를 생성하기 위해 필요한 bit 수 = 7bit

200.1.1.0|0000000

200.1.1.0|1111111

Network ID : 200.1.1.0/25

IP 범위 : 200.1.1.0 ~ 200.1.1.127

 

B부서 : 필요한 IP개수 총 27개

27개의 IP를 생성하기 위해 필요한 bit 수 = 5bit

200.1.1.100|00000

200.1.1.100|11111

Network ID : 200.1.1.128/27

IP 범위 : 200.1.1.128 ~ 200.1.1.159

 

C부서 : 필요한 IP개수 총 4개

4개의 IP를 생성하기 위해 필요한 bit 수 = 2bit

200.1.1.101000|00

200.1.1.101000|11

Network ID : 200.1.1.160/30

IP 범위 : 200.1.1.160 ~ 200.1.1.163

 

이미 잘라진 네트워크를 필요한 만큼 다시 자르게 되면 서브넷 마스크의 길이가 동일하지 않고 달라지게 된다.  

그래서 이를 '다양한 길이의 서브넷 마스크' 라는 뜻의 VLSM이라고 부른다. 

 

 


'Network > TCP-IP' 카테고리의 다른 글

ARP (주소결정프로토콜)  (5) 2014.08.07
Wildcard-Mask (와일드카드 마스크)  (6) 2014.07.26
Subnet-Mask (서브넷 마스크)  (0) 2014.07.21
3계층 보충-IPv4  (2) 2014.07.21
3계층(Network) 세부설명  (0) 2014.07.20

Subnet-Mask

Subnet-mask IP 주소의 Net-id Host-id 부분을 구분하기 위해 사용하는 필터값이다.

Class 구분하여 IP 사용할 때에는 첫번째 옥텟의 숫자만 보고 네트워크 부분을 비교하여 구분할 있었지만, 서브네팅을 하여 네트워크가 나눠지면 이상 Class라는 개념이 존재하지 않게 되고 네트워크 구분이 어려워진다.

주소 별로 네트워크가 어디까지인지를 구분하기 위해서 사용하는 것이 Subnet-mask 것이다.

 

Subnet-mask의 구성

218.128.32.0 이라는 주소만 봤을때 Class 구분을 하면 C class 3번째 옥텟까지가 네트워크 범위겠지만, 만약 그렇지 않다면 어디까지를 네트워크로 보고 구분해야 되는지 수가 없다.

 

Net-id 1, Host-id 0으로 표시하여 구분하게 한다.

다시 말해 1 표시된 위치의 bit Net-id 사용되어 네트워크 구분에 사용되고, 0으로 표시된 위치의 bit Host-id 사용되어 네트워크 범위 안에 있는 호스트를 구분하기 위한 값으로 사용된다.

 

ip address    :    11011010.10000000.00100000.00000000

subnet mask :    11111111.11111111.11111111.00000000

예를 들어 위와 같이 IP주소를 Subnet-mask 표시한다면 3번째 옥텟까지가 네트워크 주소로 사용되었다고 구분할 있다.

2진수로 표시된 Subnet-mask 사람이 쉽게 있도록 10진수로 표시하여 255.255.255.0 으로 쓰고, 표시된 내용을 토대로 네트워크의 범위를 구해보면 218.128.32.0 ~ 218.128.32.255 된다.

 

ip address    :    11011010.10000000.00100000.00000000

subnet mask :    11111111.11111111.11111111.11100000

이번엔 위와 같이 IP주소를 Subnet-mask 표시한다면 4번째 옥텟의 3번째 bit 까지가 네트워크 주소로 사용되었다고 구분할 있다. 위의 Subnet-mask 10진수로 표시하면 255.255.255.224 있고, 표시된 내용을 토대로 네트워크의 범위를 구해보면 218.128.32.0 ~ 218.128.32.31 된다.

 

 


Prifix (프리픽스)

Subnet-mask와 마찬가지로 Net-id와 Host-id를 구분하기 위해 사용한다.

Subnet-mask를 사용하면 표시할 내용이 길어 간략하게 표시할 있는 Prefix 방식을 많이 사용하고 있다.

Prefix Subnet-mask 마찬가지로 Net-id Host-id 구분하기 위해 사용하며 Net-id bit수를 세어 / 뒤에 숫자로 표시한다. 예를 들어 255.255.255.0 이라는 Subnet-mask 2진수로 풀어서 Net-id 사용된 bit 수를 세어보면 24개이고 이를 Prefix 표시하면 /24 라고 있다.

예제)  255.0.0.0 /8

255.255.0.0 /16

255.255.255.0 /24

255.255.255.224 /27

 

 

'Network > TCP-IP' 카테고리의 다른 글

Wildcard-Mask (와일드카드 마스크)  (6) 2014.07.26
서브넷팅 (Subnetting)  (5) 2014.07.22
3계층 보충-IPv4  (2) 2014.07.21
3계층(Network) 세부설명  (0) 2014.07.20
2계층(Data-link) 세부설명  (1) 2014.07.19

+ Recent posts