Computer/Network

Ip address와 subnetting

알찬돌삐 2005. 5. 15. 19:33
1. IP address
IP packet은 경로를 통해 Destination Address까지 packet을 전달될 수 있도록 Source Address와 Destination Address를 갖고 있다.

1.1 Classful IP Addressing
IP Address는 Network Address와 Host Address로 구성되어 있으며, IP Addres의 길이는 4Bytes 즉 32bits로 되어 있다. IP Address를 표기할 때는 각 Byte의 값을 10진수로 표기하는데 전체가 4Bytes이므로 4개의 10진수가 164.124.116.5마냥 . 으로 분리되어 표기된다. 1 Bytes가 나타낼 수 있는 값의 범위는 0 ~ 255까지이므로 각 자리의 10진수는 0~ 255까지가 가능하며, 따라서 IP Address의 범위는 0.0.0.0 ~ 255.255.255.255 까지라고 말할 수 있다.


08162431IP address = Network Address + Host Address

이러한 IP Address는 3가지로 분류되는데
첫번째는 4Bytes중 Network Address가 1Bytes를 차지하는 Class A,
두번째는 Network Address가 2 Bytes를 차지하는 Class B,
세번째는 Network Address가 3Bytes를 차지하는 Class C이다.


AClass BClass Host Address 부분에서도 bit열이 모두 0이거나 1로 이루어진 것은 이용하지 않는다. bit열이 모두 0인 것은 네트웍 자체에 대한 대표번호로 이용되기 때문이며, bit열이 모두 1로 이루어진 것은 broadcasting address로 예약되어 있기 때문이다.

가) Class A Networks ( /8 Prefixes)

A Class IP Address의 첫번째 bit는 항상 0 이다. 네트워크 주소부분의 나머지 7개의 비트를 가지고 조합가능한 숫자는 1 ~ 126이다.



최대 Network 수는 27 – 2 = 126

Host Address는 24bit를 활용할 수 있으므로 224 – 2 = 16,777,214 가능하다.

가능한 IP 주소는 231 (= 2,147,483,648) 로총IP주소 232 (= 4,294,967,296)의 50%

나) Class B Networks ( /16 Prefixes)

Class B의 IP Address는 처음 2개의 bit가 항상 1,0이기 때문에 Network Address 의
첫자리 10진수는 128 ~ 191까지 가능하다


가능한 IP 주소는 230 (= 1,073,741,824) 로 총IP주소 232 (= 4,294,967,296)의 25%

다) Class C Networks ( /24 Prefixes)

Class C의 처음 3개의 bit는 항상 1,1,0이기 때문에 Network Address 의 첫자리 10진수는 192~223까지 가능하다.



가능한 IP 주소는 229 (= 536,870,912) 로 총IP주소 232 (= 4,294,967,296)의 12.5%

라) Class D

Class D 주소는 처음 4개의 bit는 항상 1110이고 IP Multicasting을 위한 것이다.
이 Class는 netid와 hostid가 없다. 전체 주소가 멀티캐스팅을 위해 사용된다.

각 그룹은 클래스 D주소의 28bit로 표현된다. 따라서 멀티캐스트 그룹 IP주소는 224.0.0.0 ~ 239.255.255.255까지의 값을 가질 수 있다. 각 멀티캐스트 주소는 0 또는 1 이상의 호스트들의 집단을 나타낸다. 이 집단을 Host Group이라 한다. 어떤 호스트가 어떤 Host Group에게 메시지를 송신할 때, 이 그룹의 일원이어야 할 필요는 없다. Host Group은 다음과 같이 2종류가 있다.

Permanent IP주소가 IANA에 의해 Permanent하게 부여되어 있다. Host Group에 가입하는 것은 Permanent하지 않다. 즉, 호스트는 마음대로 그룹을 떠나거나 그룹에 가입할 수 있다. Permanent Host Group들에게 부여된 IP주소의 리스트는 STD 2(Assigned Internet Numbers)에 있다. 이 중 중요한 것은 다음과 같다.

− 224.0.0.0 : Reserved base address

− 224.0.0.1 : 서브넷상의 모든 IP 호스트

− 224.0.0.2 : 서브넷상의 모든 IP Router

− 224.0.0.4 : DVMRP Router

− 224.0.0.5 : 모든 OSPF Router

− 224.0.0.6 : 모든 OSPF Designated Router

− 224.0.0.9 : RIP2 Router

− 224.0.0.10 : IGRP

Transient permanent하지 않는 그룹을 말하며, 필요할 때 동적으로 생성된다. Transient Group은 이 그룹에 가입한 숫자가 0일때 소멸된다.

마) Class E

Class E의 처음 4개의 bit는 항상 1111이고 Experimental use을 위해 예약되어 있다.

이 클래스는 netid와 hostid가 존재하지 않는다.

바) Private IP address

인터넷 Assigned Numbers Authority(IANA)는 사설 인터넷을 위하여 다음과 같은 3가지의 IP 주소 블럭을 할당하여 놓고 있다.

10.0.0.0 ~ 10.255.255.255 (10/8 prefix)

172.16.0.0 ~ 172.31.255.255 (172.16/12 prefix)

192.168.0.0 ~192.168.255.255 (192.168/16 prefix)

첫 번째 블록을 “24-bit블럭”, 두번째 블록을 “20-bit블럭”, 세번째 블록을 “16-bit블럭”이라는 이름을 사용한다.

2. Subnetting

2.1. 개요
IP주소 공간의 낭비 문제를 해결하기 위해 1985년에 ‘RFC950, 인터넷 표준 서브넷팅 절차’에서 서브넷의 개념을 설계하여 발표하였다.

서브넷은 한 네트워크 번호를 사용하여 여러 상호 연결망을 구축할 수 있게 해 주었다.

Subnetting은 Classful two-level addressing hierarchy로 인터넷에서 직면한 몇가지 문제를 해결하기 위해 도입되었다.

인터넷 라우팅 테이블의 증가

인터넷으로부터 Local 관리자의 또다른 네트워크 번호 요구

IP주소를 네트워크 주소와 호스트 주소라는 두 부분으로 나누어 사용하면 라우터의 경로 설정 테이블에 있는 항목수가 최소화된다는 장점이 있다.

라우터는 네트워크에 데이터그램을 보낼 때 데이터그램의 목적지 IP주소의 네트워크 부분만 심사한다.

가) Subnetting장점

subnetting은 Class IP Address를 효율적으로 활용할 수 있다

LAN의 traffic을 줄일 수 있는 장점도 있다. 동일 Network의 모든 시스템들이 하나의 LAN에 접속이 되어 있을 경우 많은 시스템들로부터 많은 broadcasting traffic이 발생할 것이다. 그러나 Network을 subnetting을 하여 여러 LAN으로 시스템을 분산하여 놓을 경우 하나의 LAN에 broadcasting traffic은 상당히 줄어들 것이다. broadcasting traffic은 동일 LAN 세그먼트에서만 전달이 되고 다른 LAN 세그먼트까지 전달되지 않기 때문이다.

외부 네트워크를 연결하지 않고 내부 네트워크를 다시 구조화 할 수 있다.



나) Subnet Mask

Subnet Mask는 IP Address의 32bit중 첫번째 bit에서 몇번째 bit까지를 Network Address로 할 것인지를 알려주는 역할을 하는 것으로, Subnet Mask는 IP Address와 마찬가지로 32bit로 이루어져 있다.

Subnet Mask의 bit열이 1인 경우 해당 IP Address의 bit열은 Network Address 부분으로 간주되고, Subnet Mask의 bit열이 0인 경우 해당 IP Address의 bit열은 Host Address 부분으로 간주된다. 따라서 Class A IP Address는 8개, Class B IP Address는 16개, Class C IP Address는 24개 bit가 1로 채워진 default Subnet Mask를 갖는다.



다) Subnet표시방법




− 실제 호스트수 = 최대 호스트수 – 2
이유는 all-0s는 네트워크로 Reserved되어있고
all-1s은 broadcast로Reserved되어있기 때문이다.

− 서브넷 마스크 마지막 숫자 + 최대 호스트수 = 256 ( C Class의 경우)
서브넷 수 × 최대 호스트수 = 256



다음은 Class B IP Address에 대한 subnet mask를 8bit 확장하면 Host Address영역은 8bit가 줄어들지만 Network Address 영역은 8bit가 확장되어 하나의 Network Address에 대해 늘어난 영역만큼 즉 28 = 256 개만큼의 subnet을 생성해 활용할 수 가 있다.

가령 164.124.0.0 / 16에 대해 subnet mask 255.255.255.0를 적용하면 새로운 subnet 은

164.124.0.0 /24 164.124.1.0 /24

164.124.2.0 /24

164.124.3.0 /24

164.124.4.0 /24

............

164.124.254.0 /24

164.124.255.0 /24

즉 256개가 생겨난다.

가령 Destination IP Address가 164.124.3.235인 packet을 전달하고자 할 때 우선 164.124.0.0에 대한 subnet mask를 적용하여 해당 subnet을 알아내고 그 subnet에 대한 경로를 Routing Table에서 검색하여 해당 경로로 전달한다. Subnet mask를 적용하는 방법은 Destination IP Address의 bit열에 subnet mask bit열을 AND 논리를 적용한다.

라) All-0s Subnet and All-1s Subnet

처음 Subnetting을 정의할 때, Classful Router가 혼란을 일으킬 가능성을 배제하기 위하여 All-0s 서브넷과 All-1s 서브넷을 사용하는 것을 RFC950에서는 금지되어 있지만 많은 상용 라우터는 Classful Protocol(RIP-1)과 Classless Protocol (BGP-4)를 동시에 지원하고 있어All-0s 서브넷과 All-1s 서브넷을 사용하는 것을 허용된다.

마) B Class Subnet Example

Class B에 대한 아래 표는 시스코 ICND 교재를 참조한 내용이다.





여기서 주의할 점은 먼저 기술된 내용과 다른 이유는 시스코 자격시험에서는 RFC950 표준에 따른 기준으로 시험문제를 기술해야만 된다. 따라서 Subnet수가 2N-2로 계산해 주어야 한다.

그리고 명령어 ip subnet-zero를 Cisco라우터에서 설정시에는 All-0s 서브넷과 All-1s 서브넷을 사용하는 것이 가능하다

출처 : http://blog.naver.com/bunny121/140009767171.

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

[Linux] Route 명령어로 IP 차단  (0) 2005.05.24
암호화  (0) 2005.05.15
아파치버추얼호스트  (2) 2005.03.20
Cisco Network Academy Chapter 4  (0) 2004.11.29
Cisco Network Academy Chapter 1  (0) 2004.11.29