프로그래밍/Network

IP와 Subnet

Lou Park 2020. 11. 28. 16:22

IPv4: 32bit = 8bit . 8bit . 8bit . 8bit

 

IP = 네트워크부 + 호스트부

192.168.1.119

Example) 굵은 글자가 네트워크부 / 밑줄글자가 호스트부

 

IP 주소는 네트워크 부와 호스트 부로 구성되어있다.

라우터는 송신지 IP의 네트워크 부 정보를 보고 목적지가 같은 네트워크에 있는지 판단한다.

 

어드레스 클래스(Address class)

이 네트워크부를 어디까지 할지 고정해서 정해둔것이 어드레스 클래스다.

가능한 호스트 주소 수에서 2를 빼는 이유는 모든 비트가 0인 주소와, 모든 비트가 1인 주소를 호스트 주소로 할당하지 않는 예약된 IP 주소이기 때문이다. 십진수로는 0과 255가된다.

 

xxx.xxx.xxx.0: 네트워크 전체 의미

xxx.xxx.xxx.255: 해당 네트워크의 모든 호스트들을 의미하는 Broadcast address

 

클래스 앞 고정 비트 네트워크 주소 영역 호스트 주소 영역
A 0 8bit (2^8 - 2^1) 24bit (2^24 - 2)
B 10 16bit (2^16 - 2^2) 16bit (2^16 - 2)
C 110 24bit (2 ^ 24 - 2^3) 8bit (2^8 - 2)
D 1110 32bit (2 ^ 32 - 2 ^ 4) -

 

서브넷/서브넷 마스크 (Subnet/Subnet Mask)

서브넷 마스크를 사용하면 네트워크부를 1bit 단위로 늘려 쓰는것이 가능하다. 서브넷 마스크는 IP 주소에 추가되는 정보이므로 32bit 만큼의 정보가 더 필요하다.

 

서브넷 마스크는 아래와 같이 표현한다.

이 경우 32bit 중에서 24bit만큼을 네트워크부로 설정하고 나머지 비트를 호스트부에 할당한다는 의미이다.

서브넷 마스크를 이용하면 서브넷을 만들 수 있는데, 연결하고 싶은 호스트들의 규모에 맞게 네트워크를 구성 할 수 있다.

10.1.1.1/24 

 

Private IP

가정이나 사무실에서 이용할 수 있는 주소다. 사설 IP는 외부에서 접근 할 수 없기 때문에 NAT(Network Address Translation)과 같은 주소 변환 기술을 사용해서 Private IP 를 Public IP로 변환해주는 것이 필요하다.

 

클래스 A에서 10.0.0.0 ~ 10.255.255.255

클래스 B에서 172.16.0.0 ~ 172.31.255.255

클래스 C에서 192.168.0.0 ~ 192.168.255.255