티스토리 뷰
CIDR(Classess Inter-Domain Routing)은 1993년 도입된 IP주소 할당 기법이다.
4개에 옥텟에 더해 하나의 10진수 숫자로 이루어져 있으며,
이는 기존의 IP 할당 방식인 클래스 풀 네트워크(Classful Network)를 대체하였다.
계속해서 클래스풀 네트워크 기법과 CIDR기법에 대해 알아보자.
Classful Network
클래스 도입 이전 IP주소는 단순히 8자리의 네트워크 넘버 필드와 나머지 로컬 어드레스 필드로 구분되어 있었다.
이 방식은 대규모 네트워크가 적고 본격적인 랜이 보급되기 전까진 효율적이었으나,
네트워크의 규모가 방대해지고 사용자가 늘어나면서 인터넷 확장성에 심각한 제한을 발생시키게 된다.
예를 들면 초기에 IP주소를 할당받은 단체는 다 쓸 수도 없을 만큼의 큰 공간을 배당받게 되고
이후에 진입한 단체는 주소를 발급받지 못하는 상황이 생기게 된 것이다.
즉, IP주소가 부족하게 되었다는 뜻이다.
이를 해결하기 위해 1981년 단체 규모에 따른 새로운 주소 할당 기법인 주소 클래스(Address Classes)가 발표되었으며,
그에 따른 새로운 IP 주소 정의는 아래와 같았다.
Class | Leading Bits | Size of Network Number Bit field |
Size of Rest Bit field |
Number of Networks |
Addresses per Network |
Class A | 0 | 8 | 24 | 128(27) | 16,777,216(224) |
Class B | 10 | 16 | 16 | 16,384(214) | 65,536(216) |
Class C | 110 | 24 | 8 | 2,097,152(221) | 256(28) |
좀 더 직관적으로 그림으로 확인하면 아래와 같다.
이 방식은 기존의 방식에 비해 네트워크 아이디를 표시하는 영역이 넓어졌기 때문에 임시적이나마 인터넷 확장성을
안정적으로 유지할 수 있게 도와주었다.
하지만 이와 같은 변화에도 불구하고 IP주소의 빠른 소모 속도에 따른 부족 현상은 완전히 해소되지 않았고,
이와 같은 요구 덕에 1993년 등장한 CIDR(사이더) 방식은 클래스 풀 네트워크를 대체하게 된다.
CIDR(Classess Inter-Domain Routing)
사이더는 이름 그대로 클래스가 없는 도메인간 라우팅이라는 뜻이다.
IPv4 주소의 효율적 사용과 인터넷 광역 라우팅의 부하를 줄이는 목적으로 개발된 사이더는
네트워크 아이디 영역을 원하는 만큼 지정해 사용할 수 있다는 특징이 있다.
구체적으로 보면 위에서 처음 본 그림과 같은 모양을 가진다.
IP주소 뒤에 붙은 십진수 숫자(/16)는 처음부터 16비트를 네트워크 아이디로 사용한다는 의미이며,
뒤의 주소를 이용해 총 65536(216)개의 IP주소를 사용하겠다는 의미이기도 하다.
추가로 CIDR 숫자에 따른 IP주소의 수는 아래와 같다.
CIDR | IP Addesses |
/32 | 1(20) |
/24 | 256(28) |
/16 | 65,536(216) |
/8 | 16,777,216(224) |
추가로 아래 주소에서 CIDR주소를 변환해 볼 수 있다.
Subnet
서브넷은 서브 네트워크(Subnetwork)의 줄임말로 공통된 네트워크 아이디를 갖는 하위 네트워크를 가리키는 말이다.
좀 더 구체적으로 말아하자면, 위에서 봤듯이 IP주소는 네트워크 ID와 호스트 ID로 나뉘는데
이때 같은 네트워크 ID를 사용하는 호스트로 이루어진 네트워크를 서브넷이라고 부르는 것이다.
기본적으로 호스트는 같은 서브넷 내의 호스트와만 통신이 가능하며,
다른 서브넷에 연결하기 위해서는 게이트웨이(Gateway)라는 출입구가 필요하다.
Routing Table
라우팅 테이블은 네트워크를 통해 데이터 패킷이 어디로 향하게 되는지 결정하는 규칙을 담은 테이블이다.
데이터 패킷에는 출발지와 목적지에 대한 정보가 담겨 있으며,
테이블에는 해당 패킷이 목적지로 향하는 최적 경로를 위한 모든 정보가 담겨있다.
여기서 모든 정보라 함은 구체적으로 대상 IP, 발신 인터페이스, 대상으로 향하는 다음 라우터에 대한 정보를 포함한다.
추가로 모든 서브넷은 반드시 라우팅 테이블을 가지고 있어야 하며
하나의 라우팅 테이블을 여러 개의 서브넷에 연결하는 것도 가능하다.
'Development > Network' 카테고리의 다른 글
[OAuth 2.0]구글/카카오/네이버 클라이언트 아이디/시크릿 발급 (0) | 2023.07.14 |
---|---|
[Network]HTTP status Code 요약 (0) | 2023.03.18 |
[Network]NGINX 튜토리얼 (1) | 2023.03.07 |
[Network]OAuth 2.0 Workflow (0) | 2022.09.28 |
[Network]OAuth 2.0 (0) | 2022.09.28 |
[Network]JWT(JSON Web Token) (0) | 2022.09.23 |
- Total
- Today
- Yesterday
- 세모
- 리스트
- Algorithm
- 면접 준비
- 스트림
- 자바
- 지지
- 파이썬
- 백준
- 맛집
- a6000
- 여행
- 중남미
- 칼이사
- 세계일주
- Backjoon
- 유럽
- Python
- 야경
- spring
- 유럽여행
- RX100M5
- 남미
- 스프링
- java
- BOJ
- 동적계획법
- 세계여행
- 기술면접
- 알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |