1. IPv4 Class 의 분류
IP -> Protocol Address 또는 Software Address 라 불리운다.
0.0.0.0 ~ 0.255.255.255 ->사용할 수 없는 주소, HOST-ID에서 제외되는 주소
1) 유니캐스트 주소
- A Class(0~127)
0. | 0.0.0 ~ 127. | 255.255.255 Default Subnet Mask : 255.0.0.0
0 0000000. 0 1111111. 한 네트워크 아이디당 IP 개수 = 2^24개
- B Class(128~191)
128.0. | 0.0 ~ 191.255. | 255.255 Default Subnet Mask : 255.255.0.0
10 000000 10 111111 한 네트워크 아이디당 IP 개수 = 2^16개
- C Class(192~223)
192.0.0. | 0 ~ 223.255.255. | 255 Default Subnet Mask : 255.255.255.0
110 00000 110 11111 한 네트워크 아이디당 IP 개수 = 2^8개
2) 멀티캐스트 주소
- D Class(224~239)
224.0.0.0 ~ 239.255.255.255 Default Subnet Mask : 없다.
1110 0000 1110 1111
3) 사용을 금지한 주소
- E Class(240~255)
240.0.0.0 ~ 255.255.255.255
사용자 인터페이스(IP 설정이 필요한 구간) 사용이 불가능한 IP 주소
- D Class 224.0.0.0 ~ 239.255.255.255
- E Class 240.0.0.0 ~ 255.255.255.255
- 0.0.0.0 ~ 0.255.255.255
- 127.0.0.0 ~ 127.255.255.255
- 255.255.255.255
- 네트워크 이름 , 서브넷 브로드케스트 주소(Directed Broadcast)
5. 공인 IP(Public IP)와 사설 IP(Private IP)로 구분된다.
1) 공인 IP
- 인터넷과 연결이 가능한 IP이다. 즉, 인터넷에서 사용되는 IP 이다.
- 즉, 인터넷 환경에서 데이터 전송을 하려면 출발지 주소가 공인 IP 이어야 한다.
2) 사설 IP
- 인터넷과 연결이 불가능하며, 단지 내부용으로 사용되는 IP이다.
- 만약 인터넷 환경에서 데이터 전송을 하려면 NAT 장치를 이용하여 출발지 사설 주소가 공인 IP로 변환되어야한다.
a. 10.0.0.0/8 : 10.0.0.0 ~ 10.255.255.255
b. 172.16.0.0/12 : 172.16.0.0 ~ 172.31.255.255
c. 192.168.0.0/16 : 192.168.0.0 ~ 192.168.255.255
ex ) 1.0.0.0 ~ 1.255.255.255 -> A Class에 속한다.
- 범위중 제일 첫번째 IP 1.0.0.0 => Network Address
- 범위중 제일 마지막 IP 1.255.255.255 => Network Broadcast
( 네트워크 안에서만 브로드캐스트를 할 수 있는 주소) --> 이 두가지는 사용할 수없다.
255.255.255.255 = > 이론상 전세계 인터넷 전체에 브로드캐스트를 할 수 있는 주소
- 브로드캐스트는 라우터를 절대 넘어 갈 수 없다. 그러나 설정을 통해 브로드캐스트를 넘길 수 있다.
- 라우터를 사이에 두고 해당 목적지의 네트워크 브로드캐스트 주소를 통해서 라우터를 넘어 갈 수 있다. -->Direct Broadcast 주소?????
==================================================================================
1111xxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx
11110000.00000000.00000000.00000000 = 240.0.0.0
11111111.11111111.11111111.11111111 = 255.255.255.255
Unicast = IP Class의 A/B/C Class
Multicast = IP Class의 D Class
Broadcast = IP의 마지막 IP인 255.255.255.255
==================================================================================
2.Subnet Mask => Network Address를 알기 위해
특징
IP 주소 범위
무조건 첫비트는 1로 시작되어야 함.
중간 비트에서 0이 시작되면 더이상 1이 올 수 없다.
A Class Subnet Mask
11111111.00000000.00000000.00000000 => 255.0.0.0
B Class Subnet Mask
11111111.11111111.00000000.00000000 => 255.255.0.0
C Class Subnet Mask
11111111.11111111.11111111.00000000 => 255.255.255.0
ex) 10.1.1.1
10.255.255.254 -> 첫 8비트가 같으므로 같은 네트워크인데 서브넷마스크가 주어지지 않으면 컴퓨터는 모른다.
--> 10.1.1.1을 2진수로-> 00001010.00000001.00000001.00000001 --> A ClassLogical AND
11111111.00000000.00000000.00000000 A B AND
------------------------------------------------ 0 0 0
00001010.00000000.00000000.00000000. ->10.0.0.0 0 1 0
즉 첫 옥탯, 네트워크 아이디가 8비트니까 앞에 어떤 값이와도 항상 1이고, 호스트 아이디는 항상 0이므로 첫옥탯은 항상 변함이 없고 나머지는 항상 0이다.
==================================================================================
3.Subnetwork
Subnetting
<Subnetting>
Network를 나누는 것
--예제--
192.168.0.0 /24
네트워크 ID 192.168.0.0 /24
브로드캐스트 IP 192.168.0.255 /24
호스트 IP Range 192.168.0.1 ~ 192.168.0.254
1) 위의 네트워크를 절반으로 서브넷팅 하기.
11000000.10101000.00000000.00000000 => 192.168.0.0
11111111.11111111.11111111.00000000 => 24 (서브넷마스크)
NNNNNNNN.NNNNNNNN.NNNNNNNN.HHHHHHHH
==>
NNNNNNNN.NNNNNNNN.NNNNNNNN.NHHHHHHH
|
|
HOST 자리의 첫번 째자리를 Network 로 채우고 이것은 한자리를 빌려온것
11111111.11111111.11111111.10000000 => 25개의 Bit , 이것을 10진수로 환산하면 => 255.255.255.128
N을 빌려온 이 자리에는 0또는 1이 올 수 있다.
(1)
11000000.10101000.00000000.0HHHHHHH
11000000.10101000.00000000.00000000 -->192.168.0.0
11000000.10101000.00000000.01111111 --->192.168.0.127
192.168.0.0 ~ 192.168.0.127
=========================================================
(1) 192.168.100.0 /24 를 4개의 네트워크로 서브넷 하시오
192.168.100.0 /24
255.255.255.0
4개의 네트워크로 하려면
2^n=네트워크 갯수
2^n=4 (4개의 네트워크로 하려면)
n=2
호스트 자리 2개를 빌려
11000000.10101000.01100100.00000000 --192.168.100.0 /26 ( 네트워크 ID )
.00111111 --192.168.100.63 /26 ( 브로드캐스드 주소 )
--> 192.168.100.1 ~ 192.168.100.62 ( 호스트 IP 범위 )
.01000000 -->192.168.100.64 /26(네트워크 ID)
.01111111 -->192.168.100.127 /26( 브로드캐스드 주소 )
--> 192.168.100.65 ~ 192.168.100.126 ( 호스트 IP 범위 )
.10000000 --> 192.168.100.128 /26(네트워크 ID)
.10111111 --> 192.168.100.191 /26( 브로드캐스드 주소 )
--> 192.168.100.129 ~ 192.168.100.190 ( 호스트 IP 범위 )
.11000000 --> 192.168.100.192 /26 (네트워크 ID)
.11111111 --> 192.168.100.255 /26 ( 브로드캐스드 주소 )
--> 192.168.100.193 ~ 192.168.100.254 ( 호스트 IP 범위 )
(2) 120.172.0.0 /16 을 2개의 네트워크로 서브넷 하시오
01111000.10101100.00000000.00000000 --> 120.172.0.0 /17 ( 네트워크 ID )
.01111111.11111111 --> 120.172.127.255 /17 ( 브로드캐스드 주소 )
--> 120.172.0.1 ~ 120.172.127.254 ( 호스트 IP 범위 ) 2^15 -2 = 호스트 개수. 왜 15승이냐? 호스트 수가 15니까 1개를 네트워크에 빌려줬으니 15개.
.10000000.00000000 --> 120.172.128.0 /17 ( 네트워크 ID )
.11111111.11111111 --> 120.172.255.255 /17 ( 브로드캐스드 주소 )
--> 120.172.128.1 ~ 120.172.255.254 ( 호스트 IP 범위 )
2^n=네트워크 갯수
2^n=2 (2개의 네트워크로 하려면)
n=1
(3) 8.0.0.0 /16을 4개의 네트워크로 서브넷 하시오.
00001000.00000000.00000000.00000000 --> 8.0.0.0 /16
11111111.11111111.00000000.00000000 --> 255.255.0.0 /16
00001000.00000000.00000000.00000000 --> 8.0.0.0 / 18 ( 네트워크 ID )
00001000.00000000.00111111.11111111 --> 8.0.63.255 /18 ( 브로드캐스드 주소 )
--> 8.0.0.1 ~ 8.0.63.254 ( 호스트 IP 범위 )
00001000.00000000.01000000.00000000 --> 8.0.64.0 /18 ( 네트워크 ID )
00001000.00000000.01111111.11111111 --> 8.0.127.255 /18 ( 브로드캐스드 주소 )
--> 8.0.64.1 ~ 8.0.127.254 ( 호스트 IP 범위 )
00001000.00000000.10000000.00000000 --> 8.0.128.0 /18 ( 네트워크 ID )
00001000.00000000.10111111.11111111 --> 8.0.191.255 /18 ( 브로드캐스드 주소 )
--> 8.0.128.1 ~ 8.0.191.254 ( 호스트 IP 범위 )
00001000.00000000.11000000.00000000 --> 8.0.192.0 /18 ( 네트워크 ID )
00001000.00000000.11111111.11111111 --> 8.0.255.255 /18 ( 브로드캐스드 주소 )
--> 8.0.192.1 ~ 8.0.255.254 ( 호스트 IP 범위 )
(4) 8.0.0.0 /8 을 4개의 네트워크로 서브넷 하시오.
00001000.00000000.00000000.00000000 --> 8.0.0.0 /8
11111111.00000000.00000000.00000000 -->255.0.0.0 /8
00001000.00000000.00000000.00000000 --> 8.0.0.0 /10 ( 네트워크 ID )
00001000.00111111.11111111.11111111 --> 8.63.255.255 /10 ( 브로드캐스드 주소 )
--> 8.0.0.1 ~ 8.63.255.254 ( 호스트 IP 범위 )
00001000.01000000.00000000.00000000 --> 8.64.0.0 /10 ( 네트워크 ID )
00001000.01111111.11111111.11111111 --> 8.127.255.255 /10 ( 브로드캐스드 주소 )
--> 8.64.0.1 ~ 8.127.255.254 ( 호스트 IP 범위 )
00001000.10000000.00000000.00000000 --> 8.128.0.0 /10 ( 네트워크 ID )
00001000.10111111.11111111.11111111 --> 8.191.255.255 /10 ( 브로드캐스드 주소 )
--> 8.128.0.1 ~ 8.191.255.254 ( 호스트 IP 범위 )
00001000.11000000.00000000.00000000 --> 8.192.0.0 /10 ( 네트워크 ID )
00001000.11111111.11111111.11111111 --> 8.255.255.255 /10 ( 브로드캐스드 주소 )
--> 8.192.0.1 ~ 8.255.255.254 ( 호스트 IP 범위 ) 호스트의 갯수는 하나의 네트워크당 2^22 -2 = 호스트의 갯수
2^n=네트워크 갯수
2^n
(5) 8.64.0.0 /10 을 8개의 네트워크로 서브넷팅
2^n=8
n=3
8.01000000.00000000.00000000--> 8.64.0.0 /13
8.01000111.11111111.11111111--> 8.71.255.255 /13
8.01001000.00000000.00000000--> 8.72.0.0 /13
8.01001111.11111111.11111111--> 8.79.255.255 /13
8.01010000.00000000.00000000--> 8.80.0.0 /13
8.01010111.11111111.11111111--> 8.87.255.255 /13
8.01011000.00000000.00000000--> 8.88.0.0 /13
8.01011111.11111111.11111111--> 8.95.255.255 /13
8.01100000.00000000.00000000--> 8.96.0.0 /13
8.01100111.11111111.11111111--> 8.103.255.255 /13
8.01101000.00000000.00000000--> 8.104.0.0 /13
8.01101111.11111111.11111111--> 8.111.255.255 /13
8.01110000.00000000.00000000--> 8.112.0.0 /13
8.01110111.11111111.11111111--> 8.119.255.255 /13
8.01111000.00000000.00000000--> 8.120.0.0 /13
8.01111111.11111111.11111111--> 8.127.255.255 /13
===================================================================
1.1.1.0 /24 -->A클래스 인데 서브넷 마스크가 24라는 것은 한번 서브넷팅이 이루어졌다는 것이다.
Classful : 클래스를 지키고 있다. 원래의 범위에 원래의 기본 해당 클래스에 서브넷 마스크.
...
...
하지만 요즘에 IP 들은
Classless IP라고 하는데, 전통적인 Class 기법을 사용하지 않는다는 것이다.
Classless : 모든 기본 서브넷 마스크를 쓰지 않는 네트워크를 말한다.
고로
1.1.1.0 /24 는 Classless 네트워크라고 볼 수 있다.
부서가 2개가 있다.
1. 인사부
컴퓨터 100대
2. 총무부
컴퓨터 100대
이것을 각각 부서별로 서브넷팅 하는 방법.. 이 호스트와 맞먹는 가장 알맞은 네트워크를 찾는 방법
공식 :
2^n >= 호스트 갯수
(같거나 크다)
2^n >= 100
(계산기를 이용하여 찾는다. 15
n=7
2^7 = 128
결국
11111111.11111111.11111111.10000000 /25 라는 것이다. 2의 7승, 7개 만큼 호스트 이고 나머지는 다 1이라는 것이다..
======================================
1.1.1.0 /24
부서 A -50
B-50
C-50
D-50
2^n >=50
n=6
11111111.11111111.11111111.11000000 /26
==============================================================================
VLSM 예제
1.1.1.0 /24
부서 A-100
부서 B-30
부서 C-40
1. 먼저
2^n >= 100
n=7
11111111.11111111.11111111.10000000 /25
1.1.1.0HHHHHHH
-->1.1.1.0 ~ 1.1.1.127 /25
*** 여기에 부서 A 100개 주고
1.1.1.1HHHHHHH
--> 1.1.1.128 ~ 1.1.1.255 /25
여기서 B와 C 할당
****우선 B는 50
2^n >= 50
n=6
11111111.11111111.11111111.1HHHHHHH에서
.11000000 --> 0이 6자리가 되야 된다는 소리... /26 --> 이때 주의 할게 원래 /25였다가 /26이 된거니까 26번째 비트로만 계산을 한다.
1.1.1.10HHHHHH
-->1.1.1.128 ~ 1.1.1.191
1.1.1.11HHHHHH
--> 1.1.1.192 ~ 1.1.1.255
====================================
서브넷팅
1. CIDR ( Class Inter Domain Routing ) : 호스트 갯수를 똑같이 해서 나누는 서브넷팅. 절반으로 짜르고 ..짜르고.. 짜르고. 호스트를 하나씩 빌려서..
2. VLSM ( Variable Length Subnet Mask ) : 위의 예제에서와 같이 다양한 길이로 쪼개는 서브넷팅이며 VLSM은 CIDR의 개념을 포함하고 있다고 보면 된다.
===================================================================
슈퍼넷팅
-쪼개진 네트워크를 하나로 합치는 것. 나눠진 서브넷팅을 하나로 합치는 것
1.1.1.0 /24
이것을 두개로 쪼갠다면
1.1.1.0 /25
1.1.1.128 /25
이것을 다시 합치려고 한다면.. 나누어진 모든 네트워크에 네트워크 ID를 알고있는 상태에서 네트워크 ID를 모두 이진수로 바꾼다.
00000001.00000001.00000001.00000000
00000001.00000001.00000001.10000000
이중에서 맨첫번째 비트부터 위의 비트와 아래의 비트까지 찾아낸다.
00000001.00000001.00000001. --->24bit 까지 똑같다.
00000001.00000001.00000001.00000000 --> 똑같은 자리까지 쓰고 나머진 0으로 쓴다. (네트워크 ID)
11111111.11111111.11111111.00000000 --> 똑같은 자리까지 1로 쓰고 나머진 0 ( 서브넷 마스크 )
아무거나 합칠 순 없다. 네트워크 장비에서 나오는 용어이며 용도가 따로 있다.
* Host IP 범위 구하기
1. 10.225.152.222 /23
우선 IP 주소를 이진수로 바꾸고 서브넷 마스크와 AND 연산 하여 네트워크 ID를 구한다.
00001010.11100001.10011000.11011110
11111111.11111111.10011000.00000000
00001010.11100001.10011000.00000000 /23--> 네트워크 ID 를 구하면 호스트 범위를 알 수 있다.
10.225.152.0 /23
00001010.11100001.10011000.00000001 --> 호스트 범위 가장 작은 주소
00001010.11100001.10011000.11111111 --> 호스트 범위 가장 큰 주소
Host IP 범위 (10.225.152.2 ~ 10.225.152.254 /23 )
00001010.11100001.10011000.11111111 --> broadcast IP
00001010.11100001.1001100H.HHHHHHHH
255.255.255.0
10.225.152.1
===================================================================
1.1.1.0 /30
P2P 네트워크..
가장 작은 서브넷 마스크는 30 그이하는 호스트가 없기 때문에 ..
서브넷팅 계산해주는 사이트
직접계산해보고 확인.
====================================================================
CIDR(Classless Inter Domain Routing)
VLSM(Variable Length Subnet Mask)
Classful <-> Classless (전통적인 방법의 클래스를 사용하지 않겠다라는 뜻)
-CIDR-
180.0.0.0 / 16
Network-ID = 180.0.0.0 / 16
Network-Br = 180.0.255.255 / 16
Host-Range = 180.0.0.1 ~ 180.0.255.254
10110100.00000000.hhhhhhhh.hhhhhhhh -> 16개의 network id와 16개의 host range
11111111.11111111.0000000.00000000 -> 16개의 subnetmask
0과 1로.
10110100.00000000.nhhhhhhh.hhhhhhhh -> host 부분을 n, network로 전환 시킨것이고 서브넷마스크는 /17이되었다. 하나를 빌릴때 경우의수는 2개
11111111.11111111.1000000.00000000 => subnetmask는 / 17 이 되며, 255.255.128.0 두개를 빌릴때 경우의수 4개
세개를 빌릴때 경우의수 8개
결국 2^1, 2^2...씩
1)첫번째 네트워크의 범위
10110100.00000000.0hhhhhhh.hhhhhhhh
10110100.00000000.00000000.00000000 -> 180.0.0.0
10110100.00000000.01111111.11111111 -> 180.0.127.255
Network Address = 180.0.0.0/17
Network Broadcast = 180.0.127.255/17
Host Range = 180.0.0.1 ~ 180.0.127.254
2)두번째 네트워크의 범위
10110100.00000000.1hhhhhhh.hhhhhhhh
10110100.00000000.10000000.00000000 -> 180.0.128.0
10110100.00000000.11111111.11111111 -> 180.0.255.255
Network Address = 180.0.128.0/17
Network Broadcast = 180.0.255.255/17
Host Range = 180.0.128.1 ~ 180.0.255.254
* 클래스리스로 쪼갰을 경우에 서브넷마스크를 표기 해줘야 한다.
* 서브넷을 하는 목적 IP를 효율적으로 사용하기 위해
ex1)200.100.0.0 / 24 를 4개의 네트워크로 나누고 각 네트워크의 Network 주소, Broadcast 주소 Host 범워를 구하여라!
11001000.01100100.00000000.hhhhhhhh -> 24개의 network id와 8개의 hostrange
11001000.01100100.00000000.nnhhhh -> 4개의 네트워크로 나눠야 되니까 2^2, 즉 2^n = 나누고자 하는 네트워크
1)
11001000.01100100.00000000.00hhhhhh
11001000.01100100.00000000.00000000 = 200.100.0.0 / 26
11001000.01100100.00000000.00111111 = 200.100.0.63 / 26
2)
11001000.01100100.00000000.01hhhhhh
11001000.01100100.00000000.01000000 = 200.100.0.64 / 26
11001000.01100100.00000000.01111111 = 200.100.0.127 / 26
3)
11001000.01100100.00000000.10hhhhhh
11001000.01100100.00000000.10000000 = 200.100.0.128 / 26
11001000.01100100.00000000.10111111 = 200.100.0.191 / 26
4)
11001000.01100100.00000000.11hhhhhh
11001000.01100100.00000000.11000000 = 200.100.0.192 / 26
11001000.01100100.00000000.11111111 = 200.100.0.255 / 26
=> 실제 / 26 이 값은 255.255.255.192
==================================================================================
< VLSM >
(2^n)-2 => 호스트 갯수, -2를 하는 이유는 맨 첫번째와 맨끝 IP를 빼니까
200.100.0.0 /24
-이 주소로 네트워크 3개를 만드려고 한다
1) 100 2) 50 3) 50
1) (2^n)-2 >= 100
n=7 이면 128-2 =126(호스트의 값), 여기서 7의 의미는 뒤에서 부터 7자리가 호스트자리
---> 11001000.01100100.00000000.0hhhhhhh => 200.100.0.0~200.100.0.127 / 25
11111111.11111111.11111111.1hhhhhhh =25 = 255.255.255.128
11001000.01100100.00000000.1hhhhhhh
2) (2^n)-2 >= 50
n=6
11001000.01100100.00000000.1nhhhhhh
11001000.01100100.00000000.10hhhhhh => 200.100.0.128~200.100.0.191 / 26
11111111.11111111.11111111.11000000 = 26 = 255.255.255.192
11001000.01100100.00000000.11hhhhhh => 200.100.0.191~200.100.0.255 / 26
11111111.11111111.11111111.11000000 = 26 = 255.255.255.192
----------------------------------------------------------------------------------------------------------------------------------------------------
200.100.0.0 /30
11001000.01100100.00000000.000000 hh
11111111.11111111.11111111.111111 00
11001000.01100100.00000000.000000 00
11001000.01100100.00000000.000000 01
11001000.01100100.00000000.000000 10
11001000.01100100.00000000.000000 11
----------------------------------------------------------------------------------------------------------------------------------------------------
'Network' 카테고리의 다른 글
사설 IP ( Private IP), 특수 목적의 IP 네트워크 기초 (0) | 2014.09.22 |
---|---|
L2, L3, L4 스위치 정의 및 개념 정리 (0) | 2014.09.22 |
IP Header Format (0) | 2014.09.22 |
전용선(Leased Line) 네트워크 기초 (0) | 2014.09.22 |
OSI 7 Layer (OSI 7 계층 정리) (0) | 2014.09.22 |