##본 포스팅은 '모두의 네트워크(길벗)'을 공부하고 정리한 글입니다.
네트워크 계층의 역할
다른 네트워크에 있는 목적지로 데이터를 전달하려면 네트워크 계층의 기술이 필요하다.
데이터 링크 계층에서 이더넷 규칙을 기반으로 데이터의 전송을 담당하지만, 수많은 네트워크가 연결된 환경에서는 데이터 링크 계층의 기능만으로는 다른 네트워크로 데이터를 전송하기 힘들다.
즉, 스위치로만 구성되어있다면 해당 네트워크 안에서만 가능하다.
<네트워크 계층의 역할>
네트워크 간의 통신을 가능하게 하는 것
네트워크 계층을 통해 다른 네트워크로 데이터를 전송하려면 라우터라는 네트워크 장비가 필요하다.
IP
네트워크 계층에는 IP라는 프로토콜이 있다.
데이터를 다른 네트워크에 있는 목적지까지 보내려면 라우터가 필요한데, 이는 이 IP가 있어서 가능한 것이다.
네트워크 계층에서는 캡슐화할 때 IP 헤더를 붙인다.
여기엔 출발지 IP 주소와 목적지 IP 주소가 포함된다.
이렇게 캡슐화 된 것을 IP 패킷이라 한다.
**데이터 링크 계층에서는 프레임이었다.
IP 주소
랜에서는 MAC 주소만으로도 통신할 수 있지만 다른 네트워크에는 데이터를 보낼 수 없다.
그래서 MAC주소가 아닌 네트워크 식별 주소인 IP 주소가 필요하다.
IP 주소는 어떤 네트워크의 어떤 컴퓨터인지를 구분할 수 있도록 하는 주소이다.
이 IP 주소가 있으면 다른 네트워크에 있는 목적지를 지정할 수 있다.
<IPv4 & IPv6>
IP버전에는 IPv4와 IPv6 두가지가 있다.
IPv4 32비트로 되어있어서 IP주소를 43억개 만들 수 있었지만,
인터넷이 널리 보급되면서 128비트로 된 IPv6 주소를 사용하게 되었다.
하지만 보편적으로 사용하는 것은 IPv4이다.
<공인 IP 주소와 사설 IP 주소>
공인 IP 주소는 인터넷 서비스 제공자(ISP)가 제공한다.
인터넷 주소가 고갈되고 있기때문에, 모든 컴퓨터에 공인 IP를 할당할 수 없다.
그래서 인터넷에 직접 연결되는 컴퓨터나 라우터에는 공인 IP 주소를 할당하고, 회사나 가정의 랜에 있는 컴퓨터는 사설 IP 주소를 할당한다.
사설 IP 주소는 랜의 네트워크 관리자가 자유롭게 설정할 수도 있고, 라우터의 DHCP 기능을 사용하여 주소를 자동으로 할당할 수도 있다.
<IP 주소의 구조>
IP 주소는 32비트로 구성되어있으며, 8비트 단위(옥텟)로 나눠서 표시한다.
우리가 보기엔 10진수로 표시하지만, 실제로 IP 주소는 2진수로 되어있다.
이러한 IP 주소는 네트워크 ID와 호스트 ID로 나뉘어져있다.
<네트워크 ID와 호스트 ID>
- 네트워크 ID : 어떤 네트워크인지를 나타냄
- 호스트 ID : 해당 네트워크의 어느 컴퓨터인지를 나타냄
다른 네트워크로 데이터를 보내기 위해서는 IP 주소로 목적지를 지정하는 것뿐만 아니라, 데이터를 어떤 경로로 보낼지도 결정해야 한다.
이처럼 목적지 IP 주소까지 어떤 경로로 데이터를 보낼지 결정하는 것을 라우팅이라고 한다.
IP 주소의 클래스 구조
IP주소의 클래스는 크게 A~E로 나뉠 수 있고, 일반 네트워크에서는 A~C클래스까지 사용할 수 있다.
클래스 이름 | 내용 | 비트(총 32) | 공인 IP 주소 범위 | 사설 IP 주소의 범위 |
A 클래스 | 대규모 네트워크 주소 | 네트워크 : 8 | 호스트 : 24 | 1.0.0.0~127.255.255.255 | 10.0.0.0~10.255.255.255 |
B 클래스 | 중형 네트워크 주소 | 네트워크 : 16 | 호스트 : 16 | 128.0.0.0~191.255.255.255 | 172.16.0.0~172.31.255.255 |
C 클래스 | 소규모 네트워크 주소 | 네트워크 : 24 | 호스트 : 8 | 192.0.0.0~223.255.255.255 | 192.168.0.0~192.255.255 |
사설 IP 주소는 절대로 공인 IP 주소로 사용할 수 없다.