IP 주소
인터넷에서 IP 프로토콜(Protocol)은 IP 주소를 통해 호스트(Host)나 네트워크를 식별한다.
즉, 인터넷에 접속한 컴퓨터 및 라우터에 고유한 IP 주소를 할당하여 그 IP 주소를 사용해 컴퓨터를 특정하거나 통신 상대를 지정한다.
인터넷에 연결된 모든 컴퓨터나 라우터의 IP 주소는 유일해야 한다.
- 호스트(Host) : 컴퓨터 네트워크에 연결된 컴퓨터나 기타 장치.
- 프로토콜(Protocol) : 통신규약. 컴퓨터나 원거리 통신 장비 사이에서 메시지를 주고 받는 양식과 규칙의 체계.
IP 주소의 구성 - 네트워크 부와 호스트 부
IP 주소는 어느 네트워크의 어느 호스트라는 것을 식별하는 주소다.
- 네트워크 부(Network Part 또는 Netwrok ID) : 서로 다른 네트워크를 구분.
- 호스트 부(Host Part 또는 Host ID): 해당 네트워크에 속한 단말기를 구분.
호스트에는 컴퓨터뿐만이 아니라 IP 주소가 할당되는 라우터도 포함된다.
라우팅(Routing)
라우터 없이도 데이터 전송이 가능한 컴퓨터는 네트워크 부가 동일하고 호스트 부만 다르다. 즉 같은 네트워크 안에 있는 컴퓨터라는 소리다. 반대로 네트워크 부가 다르다는 것은 서로 다른 네트워크라는 의미이며, 라우터를 통하지 않고는 통신이 불가능하다.
IPv4
IP 프로토콜은 현재 IPv4(Internet Protocol version 4)의 주소 체계를 사용하고 있으나 그것보다 월등히 많은 수의 주소를 할당할 수 있는 IPv6(Internet Protocol version 6)가 사용되기 시작했고, 향후 모든 IP 주소는 IPv6로 대체될 전망이다.
(통상 IP 주소라 하면 IPv4를 의미한다)
현재 일반적으로 사용되고 있는 IPv4에 대해 알아보자.
IPv4는 32비트를 8비트씩 4그룹으로 나누어, 각 그룹을 십진수로 변환하고, 그룹의 경계에 '. (닷, 점)'을 넣은 형식(Dotted-decimal notation)으로 주소를 표기한다.
IP 클래스
IP 주소의 클래스
IP 클래스 기준은 IPv4 32비트 주소를 앞에서부터 8비트씩 나눈 그룹을 조합해서 네트워크 부와 호스트 부를 정한 것.
- 클래스에 따라 어디까지가 네트워크 부이고, 어디까지가 호스트 부인지가 결정됩니다.
1. 클래스 A
클래스 A는 앞 8비트를 네트워크 부, 나머지 24비트를 호스트 부로 나눈 것이다.
클래스 A 식별 비트인 '0'이 네트워크 부의 첫 비트에 할당되기 때문에 00000000 ~ 01111111의 번호가 네트워크 부로 사용된다. 따라서 십진수로 표현하면 클래스 A의 네트워크 부는 0 ~ 127의 번호가 할당된다.
호스트 부의 시작 주소와 끝주소는 네트워크 주소(시작주소)와 브로드캐스트 주소(끝주소)으로 사용하기 때문에 IP 주소의 호스트 부를 할당하는 경우에는 이 두 번호를 제외한다. 따라서 클래스 A의 호스트 부에서는 2의 24승에서 2를 뺀 번호를 호스트 부에 할당할 수 있습니다.
Cf)
- 네트워크(Network) 주소 : 해당 네트워크를 대표하는 주소
- 브로드케스트(Broadcast) : 자신의 호스트가 속해 있는 네트워크 전체를 대상으로 패킷을 전송하는 일대다 통신방식.
2. 클래스 B
클래스 B는 앞 16비트를 네트워크 부, 나머지 16비트를 호스트 부로 나눈 것.
클래스 B의 식별 비트인 '10'이 네트워크 부의 맨 앞 2비트에 할당되기 때문에 10000000 ~ 10111111의 번호가 네트워크 부의 첫 8비트로 사용된다. 따라서 십진수로 표기하면 클래스 B의 네트워크 부는 128.0 ~ 191.255 번호가 할당된다.
남은 16비트는 호스트 부로 할당되고 시작 주소와 끝주소는 네트워크 주소(시작주소)와 브로드캐스트 주소(끝주소)으로 사용하기 때문에 클래스 B의 호스트 부에서 할당 가능한 번호는 (2의 16승 - 2) 개다.
3. 클래스 C
클래스 C는 IP 주소 32비트 중 앞 24비트를 네트워크 부로, 다음 8비트를 호스트 부로 나눈 것.
클래스 C의 식별 비트인 '110'이 네트워크 부의 맨 앞 3비트에 할당되기 때문에 11000000 ~ 11011111의 번호가 네트워크 부의 첫 8비트로 사용된다. 따라서 십진수로 표기하면 클래스 C의 네트워크 부는 192.0.0 ~ 255.255.255 번호가 할당됩니다.
남은 8비트는 호스트 부로 할당되고, 시작 주소와 끝주소는 네트워크 주소(시작주소)와 브로드캐스트 주소(끝주소)으로 사용하기 때문에 한 네트워크 안에서 할당할 수 있는 호스트 주소는 254(2의 8승 -2) 개다.
서브넷팅(Subnetting)
- 서브넷팅(Subnetting) : IP 주소를 효율적으로 활용하기 위해서 클래스 A,B,C 같은 대규모 네트워크를 좀 더 작은 네트워크로 분할하는 것.
- 서브넷(Subnet) : 서브넷팅으로 분할된 네트워크.
서브넷 마스크(Subnet Mask)
- 서브넷 마스크(Subnet Mask) : IP 주소의 네트워크 부와 호스트 부의 경계를 식별하기 위해 만든 숫자.(식별자)
<IP 주소의 비트가 네트워크 부일때>
- 해당 비트에 대응하는 서브넷 마스크의 비트 : 1
<IP 주소의 비트가 호스트 부일때>
- 해당 비트에 대응하는 서브넷 마스크의 비트 : 0
서브넷마스크를 사용함으로써 클래스에 구애받지 않고 네트워크 부분과 호스트 부분을 구별할 수 있다.
'정보보안' 카테고리의 다른 글
운영체제 & 컴퓨터 아키텍쳐 (0) | 2024.11.24 |
---|---|
XSS vs CSRF (0) | 2024.10.30 |
쿠키(Cookie) vs 세션(Session) vs 토큰(Token) (0) | 2024.10.30 |
스턱스넷(Stuxnet) (1) | 2024.10.30 |
암호화(Encryption) (0) | 2024.10.30 |