IP어드레싱

3계층 - 네트워크 계층

세그먼트 내에서의 송수신은 2계층에 제한된 영역이다(세그먼트라는 키워드는 1계층와 2계층에서만 사용한다고 보면 된다). 만약 세그먼트 범위를 벗어난 네트워크와 통신하려면 어떻게 해야할까? 일단 세그먼트와 네트워크를 명확히 구분 지어야 할 것 같다.

세그먼트 : 라우터없이 스위치나 허브(분배기)로 연결되는 범위(1계층과 2계층에서 사용하는 단어)

네트워크 : 라우터와 라우터로 분배된 컴퓨터 그룹

같은 네트워크 내의 컴퓨터끼리는 2계층에 의해 연결되어 있다. 즉, 같은 네트워크 안에 있다면 2계층 만으로도 통신을 할 수 있다고 생각하면 될 것 같다. 하지만 느껴지는 것처럼, 2계층의 네트워크만으로는 큰 네트워크를 형성 할 수 없다. 할 수는 있겠지만 허브와 스위치 만으로 거대한 네트워크를 만드는 것은 힘든 일이며, 브로드캐스트와 관련된 문제도 발생할 확률이 높아진다.

허브와 스위치를 생각해보자. 허브의 플러딩 문제를 방지하기 위해서 스위치를 사용한다고 했다. 스위치는 MAC 주소 필터링과 버퍼링을 통해서 문제를 해결하려고 하지만 100% 대응할 수 있는 것은 아니다. MAC 주소 필터링의 학습 과정에서 학습되지 않았거나 멀티캐스트 / 브로드캐스트를 플러딩하기 때문이다.

위와 같은 이유로 2계층까지의 기능만으로는 큰 네트워크를 구성하기 힘든 것이다. 하지만 3계층의 라우터를 사용하게 되면 해결할 수 있는데 그 이유는 라우터를 넘어가는 브로드캐스트는 송신되지 않기 때문이다. 즉 한 개의 큰 네트워크를 작게 나눔으로써 브로드캐스트의 영향력을 줄일 수 있는 것이다. 그러기 위해서는 인터넷 작업(3계층)을 꼭 필요로한다.

인터넷 작업 : 네트워크와 네트워크를 연결해서 다른 네트워크의 컴퓨터와 통신을 가능하게 만들어 준다.

인터넷 프로토콜(Internet Protocol)

앞에서 3계층의 역할은 다른 네트워크와 통신을 하기 위한 인터넷 작업을 수행하는 것이라고 했다. 인터넷 작업을 실행하기 위해서는 크게 두 가지가 있고 어드레싱(addressing)과 라우팅(routing)이라고 부른다.

어드레싱

어드레싱은 앞에서 MAC 주소를 다룰 때 한 번 했다. 어드레스를 어떻게 써서 어떻게 배당하는 지에 대한 작업이었다. 2계층에서는 MAC 주소를 사용하여 어드레싱을 했지만 3계층에서는 MAC 주소 이외의 논리적 주소를 같이 사용해야 한다. 왜냐하면 MAC 주소는 물리적 주소로써 장소를 특정할 수 없는 주소이기 때문이다. 2계층에서 한번에 연결하는 기기의 수가 크지 않기 때문에 MAC 주소만으로 통신이 가능했다면 3계층에서는 다른 네트워크와의 통신이기 때문에 “어디”라는 정보를 더 필요로 하는 것이다. 3계층에서 사용하는 논리 주소는 어디에 있는지와 같은 위치정보를 가지고 있으며 MAC 주소와 함께 사용하여 수신처를 특정지을 수 있는 것이다(어디 네트워크에 있는 어느 컴퓨터라는 정보의 조합으로 생각해보자)

라우팅

경로 선택이라고 부르곤 한다. 목적지까지 어떤 경로를 지나쳐 갈지 결정하는 것을 의미하며, 이러한 역할을 하는 기기를 라우터라고 부른다.

위의 어드레싱과 라우팅에 의해 인터넷 작업을 수행하기 위한 프로토콜로서 TCP/IP 프로토콜군에서 사용되는 것이 IP(Internet Protocol)인 것이다.

IP

TCP/IP에서는 IP를 반드시 사용한다. 기존에 사용하던 IPv4가 있고 IP의 고갈로 인해서 나온 것이 IPv6이다.(그래도 v4를 일반적으로 사용하고 있다). IP가 인터넷 작업을 위해 하는 일은 3계층 PDU - IP 데이터그램 - 을 보면 된다. 그리고 이 IP 데이터그램은 IP 헤더가 붙은 상태일 것이다.

내용 비트 설명
1 버전 4 IP 버전
2 헤더 길이 4 IP 헤더 길이
3 서비스 타입 8 패킷의 우선도 / 중요도
4 데이터 길이 16 IP 헤더와 페이로드를 합친 길이
5 ID 16 데이터그램 식별번호(ID)
6 플래그 3 데이터그램을 분할했는지 판별
7 글래그먼트 오프셋 13 분할한 경우 본래대로 되돌릴 때 사용
8 TTL 8 Time To Live - 패킷의 생존시간
9 프로토콜 8 상위 프로토콜 지정
10 헤더 체크섬 16 IP 헤더의 에러 체크용 코드
11 송신처 IP 32 송신자의 IP 주소(논리 주소)
12 수신서 IP 32 수신자의 IP 주소(논리 주소)
(13) 옵션 n 특별한 설정을 위해 사용(없어도 됨)

IP 주소의 특징

논리 주소는 계층형이다는 특징을 가지는데, IP 주소도 동일한 특징을 갖는다. NIC와 같은 인터페이스에 고정되어 있는 MAC 주소와 달리 네트워크 관리자가 할당한다. 즉, MAC 주소처럼 고정이 아니라는 점이다. IP 주소가 어디에 있는 어느 컴퓨터라는 것을 의미하는 것처럼 소속된 네트워크가 바뀐 경우에 논리 주소가 바뀌는 것이다. 논리 주소에도 유니캐스트 / 멀티캐스트 / 브로드캐스트 세 종류의 주소가 있다. 그리고 마찬가지로 유니캐스트 주소의 논리 주소중에서 네트워크를 표시하는 번호는 접속되어 있는 모든 네트워크에서 유일해야만 한다. 접속되어있는 네트워크에서 유일해야 한다는 것에 유의해야한다. 독립한 네트워크끼리라면 상관 없으며 소속된 네트워크에서 유일해야 한다는 의미이다!

네트워크의 번호 + 컴퓨터의 번호 => 를 조합해서 유일해야 한다.

그래서 다른 네트워크라면 주소가 같아도 문제가 되지 않는다!

다시 정리를 해보자 - 네트워크 번호는 접속되어 있는 모든 네트워크에서 유일해야하고, 컴퓨터 번호는 네트워크 내에서 유일해야 한다

IP 주소

진짜 IP 주소에 대해서 보자. MAC 주소는 48비트 16진수 12자리. IP 주소는 8비트마다 10진수로 표기하며 총 32비트. 그리고 이 8비트 단락은 옥텟(octet)이라고 부른다. 다시 말해 32비트 주소로 네트워크의 번호와 컴퓨터 번호를 나타내야한다.

Share