IP란 인터넷에 연결되어 있는 모든 장치들(컴퓨터, 서버장비, 스마트폰 등)을 식별할 수 있도록 각각의 장비에게 부여되는 고유 주소이다.
IP address = 221.203.129.68을 2진수로 변환하면 11011101.11001011.10000001.01000100 이 된다.
위와 같이 2진법 32비트 숫자로 표기
IP는 32bit로 이루어진 주소이며, 1bit 가 2 -> 2의 32승 약 43억개의 주소를 가지게 된다.
IP 주소 구성
아이피는 network ID 와 host ID 로 구성
network ID는 네트워크 자체 식별, host ID는 네트워크 안에서 개별 기기 식별( network > host )
IP 주소 클래스
IP 클래스는 예전에 IPv4를 사용 할때 쓰는 IP 할당 방식
지금은 더이상 사용되지 않고, 클래스 방식이 아닌 CIDR 방식이 할당하도록 1993년 바뀌었다.
IP 주소를 8비트로 4등분 하면 각각을 옥텟(Octet)이라 부른다.
각 옥텟별 0-255개의 범위가 되어 각각 256개 입력 가능.
221.203.129.68 -> 1옥탯(1byte= 8bit) 221 , 1옥탯(1byte= 8bit) 203, 1옥탯(1byte= 8bit) 129, 1옥탯(1byte= 8bit) 68
이 옥탯별로 IP 클래스를 A, B, C로 나눌 수 있다.
각 클래스별 네트워크 아이디와 호스트 아이디 부분 범위가 다르다.
A클래스
첫 옥텟에 0과 127은 사용 불가(0은 미지정, 127은 루프백 주소)
첫 옥텟 - network ID(8bit 1byte)이며 나머지는 Host ID 24bit(3byte)
A클래스의 host ID 대역이 24bit 이므로, 네트워크당 낭로 수 있는 호스트 주소는 1670만개로 대규모 네트워크에 적합
B클래스
1,2 번째 옥텟이 network ID , 나머지 16bit 가 host ID가 된다.
첫 옥텟의 두번째 비트가 10으로 고정이된다.
B 클래스의 첫옥텟이 128-191 사이의 숫자로 시작.
host 대역이 16bit 이므로 네트워크당 나올 수 있는 host수는 약 65000개로 중규모 네트워크에 적합.
C클래스
C 클래스는 network ID가 총24bit이며, 나머지 8bit가 host ID이다.
첫 옥텟의 3번째 비트가 110으로 고정.
첫 옥텟은 192-223 사이 숫자로 시작
host 대역이 256개로 소규모 네트워크에 적합
D 클래스 E클래스
D클래스는 첫 옥텟의 네번째 비트가 1110으로 고정 되며 멀티캐스트용 대역으로 IP 주소 할당XX
E클래스는 첫 옥텟의 네번째 비트가 1111로 고정되며 연구욕 예약된 주소대역으로 IP 주소 할당되지 않는다.
네트워크 주소와 브로드 캐스트 주소
아이피 주소 에서 사용할수 없는 주소 2가지 존재
첫번째는 호스트 주소는 네트워크 자체르를 지칭하며 마지막 주소는 브로드캐스트용 주소로 쓰인다.
네트워크 주소 -> 192.168.1.0(110000001010100000000001 00000000)
브로드캐스트 주소 -> 192.168.1.255(110000001010100000000001 11111111)
네트워크 주소는 말그대로 네트워크 자체를 나타내고 브로드캐스트 주소는 인터넷 데이터를 전달하기 위한 주소 .
호스트가 0이면 네트워크 주소
호스트가 모두 1이면 브로드캐스트 주소
서브넷(Subnet)
하나의 네트워크가 분할되어 나눠진 작은 네트워크
서브넷을 만들기위해 네트워크를 분할하는 것을 서브네팅(subnettin)이라고 한다.
서브네팅을 하면 IP 할당 범위를 더 작은 단위로 쪼갤 수 있게 된다. 그래서 만일 IP 가 100개만 필요하다면 C클래스(256개)를 더 쪼개서 줄 수 있다. 그리고 이 서브네팅을 서브넷 마스크를 통해 계산되어 수행.
서브넷 마스크(Subnet Mask)
IP 주소에서 네트워크 아이디와 호트스 아이디 구분하기 위한 목적으로 만들어짐.
IP주소와 똑같은 32비트 2진수로 표현
255.255.255.0
아이피와 표현이 다른 것은 서브넷 마스크는 연속된 1과 연속된 0으로 구성
11111111.11111111.11111100.00000000
Prefix 표현
ex) 192.168.0.1/24 -> /24가 서브넷 마스크를 표현한 것이다.
/24 의 뜻은 32비트 중 앞에서 부터 차례대로 1의 개수가 24개라는 의미. 32-24 =8은 0으로 채워주면 서브넷 마스크 숫자가 되는 것이다.
11111111.11111111.11111111.00000000
클래스별 표기 예시
10.10.10.10/8 - > A클래스
172.16.1.10/16 -> B클래스
192.168.100.10/24 -> C클래스
서브네팅(Subnetting)
IP주소를 효율적으로 나누어 사용하기 위한 방법
서브네팅을 하면 IP 할당 범위를 더작은 단위로 나눌 수 있다. (자신의 네트워크 주소를 더 작은 서브 네트워크로 2의 배수로 나누는 과정)
ex) 호스트 50개만 사용 시 192.168.100.10/24 C 클래스로 사용시 총 256개중 50개만 사용하면 낭비가 도니 이를 절번(128)에 절반으로 나눈(64개) 주소를 기업에게 할당하고 남는 네트워크 주소는 다른 사용처로 할당하는 효율적인 작업이 바로 서브네팅 원리이다.
2등분
약 100개의 아이피 사용시 C 클래스 대역을 할당 할 수 있다(192.168.100.10/24) 총 256개의 Host 사용 할 수 있지만 이를 효율적으로 더 나누어 줄수 있다.
이를 나누기 위해 호스트 ID 에 서브넷 구분 비트라는것을 지정
11111111.11111111.11111111.10000000(bold 처리 한 부분이 서브넷 구분 비트)
192.168.10.1 ~ 192.168.10.126
192.168.10.129 ~ 192.168.10.254
4등분
11111111.11111111.11111111.11000000(bold 처리 한 부분이 서브넷 구분 비트)
그러면 서브넷 구분비트는 00, 01, 10, 11 로 총 4개로 구분되어질 수 있고, 이를 적용해보면
00000000 ~ 00111111
01000000 ~ 01111111
10000000 ~ 10111111
11000000 ~ 11111111
로 범위가 4등분되어 나뉘어 줄수 있다.
슈퍼넷팅(SuperNetting)
서브넷팅이 네트워크를 분할하는것 이었다면, 슈퍼넷팅은 반대의 개념이다.
즉 네트워크를 합치는 것이다.
에를 들어 C클래스의 모든 대역폭으로 커버가 불가능한 경우 B클래스 대역폭을 통째로 주는것이 아닌 슈퍼네팅을 통한 C클래스 2개를 합쳐서 하나의 네트워크로 구성.
192.168.0.1/24 -> 192.168.0.1/23 으로 prefix 숫자를 감소 시키면 호스트 아이디 갯수가 늘어난다.
즉, 서브넷 마스크의 1의 갯수가 23개가 되니 호스트 ID의 비트수는 9개가 되고, 2^9=512 니까
192.168.10.0 ~ 192.168.11.255 의 범위를 가지게 된다.
그러면 C클래스 두개를 합쳐 256 X 2 = 512 - 2(특수목적 IP) = 510 개의 호스트를 가질 수 있는 네트워크가 완성되어 진다.
'코드 > dev' 카테고리의 다른 글
Nginx (0) | 2025.04.04 |
---|---|
네트워크 연결 확인 방법: ping, telnet, curl 활용 (0) | 2025.04.04 |
Internet Gateway & NAT Gateway (0) | 2025.04.02 |
OSI 7계층 (0) | 2025.04.02 |
네트워크 기초 (4) | 2024.07.23 |