서로 다른 LAN을 연결시켜주는 것이 3계층의 역할이며 LAN과 LAN을 연결시켜주는 역할을 하기 위해서는 router 등의 장비가 필요함.
멀리 떨어진 곳에 존재하는 네트워크까지 어떻게 데이터를 전달할지 제어하는 일을 담당 -> 발신에서 착신까지의 패킷의 경로를 제어.
WAN에서 통신할 때 사용하는 IP 주소
.
멀리 있는 네트워크 대역과 통신하기 위해서는 MAC 주소 뿐만 아니라 IP 주소도 가지고 있어야 한다.
멀리있는 곳과 통신할 때 IP주소만 있는 것이 아니라 서브넷 마스크
, 게이트웨이
등이 추가적으로 필요함.
IPv4와 IPv6의 가장 큰 차이는 주소 길이
다. IPv4 같은 경우는 32bit의 주소 체계를 사용하기 때문에 나올 수 있는 경우의 수는 2^32이고(대략 43억개..), IPv6 같은 경우는 128bit의 주소 체계를 사용하기 때문에 나올 수 있는 경우의 수는 2^128이다.
IP주소는 8bit씩 끊어서 표시
192.168.60.14
각각의 값의 범위: 0 ~ 255 -> 2^8 즉, 8bit
8bit가 4개이므로 32bit
IPv4의 주소는 NetworkID와 HostID로 나뉜다.
IP주소에서 Network ID 길이가 얼마인지 나타내는게 Netmask(서브넷 마스크)
서브넷 마스크가 255.255.255.0이라고 할 때, IP와 서브넷 마스크를 AND 연산을 해준다.
0과 AND 연산을 하면 결과는 0이므로 AND 연산을 했을 때 결과는 192.168.60.0 이다.
여기서 0을 제외한 앞의 값이 Network ID이고 이하의 값이 HostID이다.
CIDR 로 A.B.C.D/N (192.168.60.14/24) 이렇게 표기를 하기도 하며, NetworkID가 Nbit 인것을 명시적으로 표시하고 아래의 값은 HostID임을 알려준다.
Class 별로 IP주소를 나눠서 사용함. -> 사용할 수 있는 범위가 정해짐
IP주소는 10진수 4byte로 구성 (0 ~ 255)
A 클래스의 첫번째 필드만 네트워크 대역을 구분.
그 이후 필드는 각개의 PC를 구분.
0. 0.0.0 ~ 127. 255.255.255
B 클래스는 두번째 필드까지 네트워크 대역을 구분.
그 이후 필드는 각개의 PC를 구분.
128.0. 0.0 ~ 191.255. 255.255
C 클래스는 세번째 필드까지 네트워크 대역을 구분.
마지막 필드는 각개의 PC를 구분.
192.0.0. 0 ~ 191.255.255. 255
D 클래스는 멀티캐스트를 위해 남겨둔 주소
E 클래스는 연구용으로 남겨둔 IP 주소
클래스별로 맞게 쓰니까 낭비되는 IP 주소가 많았음.
하나의 큰 네트워크를 여러개의 작은 네트워크로 쪼개서 사용.
서브넷 마스크를 도입.
IP가 점점 부족해지기 시작하면서 IPv4에서 IPv6(16byte)로 넘어가는 추세이지만 바로 넘어갈수는 없음 -> 사설 IP와 공인 IP의 도입
사설 IP를 사용하고 있는 장비들이 통신을 할 때 무조건 공인 IP로 바꾸어서 인터넷과 통신
즉, 다른 네트워크 대역으로 갈 때 사설 IP에서 공인 IP로 바뀌어서 감. 같은 네트워크 대역에서는 사설 IP를 사용하고 외부로 나갈 때는 하나의 공인 IP만을 사용.
외부에서 볼 때는 컴퓨터 간 구분이 불가하지만 공인 IP에서 사설 IP로 보내주는 과정에서 각각의 컴퓨터를 파악하여 요청한 곳에 알맞게 갖다줌.
외부에서 통신 할 때는 무조건 공인 IP로만 통신하기 때문에, 외부에서 볼 때는 사설 네트워크 대역이 없는 것 처럼 보임.
나갈 때도 공인 IP로만 통신하고 들어올 때도 공인 IP로 보내준 다음 공유기 등의 router가 내부적인 처리를 통해 요청한 PC로 값을 보내줌.
-> 내부 네트워크 대역에서 외부로 나갈 때 어떤 요청을 했는지 기록(NAT table)한 다음, 그에 대한 응답이 왔을 때 NAT table을 보고 그 대상에게 전달
-> 나간 적이 없는(NAT table에 기록되지 않은) 패킷이 응답으로 들어온다면 내부에 전달하지 않고 그냥 router가 받고 끝냄
일반적으로 서버는 공인 IP를 사용(포트포워딩 설정을 해주어야만 외부에서 내부로 들어올 수 있다.)
공인 IP 하나 당 사설의 네트워크 대역이 따로 생긴 것이기 때문에 IP 부족 현상이 많이 해소됨.
나머지 모든 IP
자기 자신을 나타내는 주소
패킷 단위의 데이터가 router에 도착하면 경로 선택 switching을 하는데, 그 중 최적화된 경로를 통해 목적지에 간다. 그 때 이정표 역할처럼 근거가 되는 것이 routing table이다.
routing table을 기준으로 의사결정을 한다.
인터넷은 Router의 집합체이며, Router는 L3 스위칭을 한다.
네트워크 인터페이스가 N개인 Router가 있다면, 정보가 도착하면 도착한 지점으로부터 N-1개 중 하나를 고르는 과정을 Switching이라고 하며, 그 때 가장 효율적인 길로 가려면 어떻게 해야할지를 router들끼리 프로토콜을 가지고 통신하여 경로 산출.
route PRINT
네트워크 인터페이스(NIC, 무선 ...)가 여러개일 때 선택하는 것을 switching.
인터페이스를 선택할 때 메트릭(비용)이 적은 것의 경로를 선택하는 등의 기준이 잡혀있음.
서브넷팅은 IP 주소 낭비를 방지하기 위해 원본 네트워크를 여러개의 서브넷으로 분리하는 과정을 말한다.
[네트워크] 서브넷, 서브넷마스크, 서브넷팅이란? | 서브넷팅 예제
해당 내용은 [따라學IT] 04. 실제로 컴퓨터끼리는 IP주소를 사용해 데이터를 주고받는다 의 강의와 개인 공부를 함께 정리 한 내용입니다.
추가로, IPv4주소 체계에 대한 암기사항, Switch가 하는 일은 Switching 이다., IP헤더 형식과 의미 요약 의 내용을 정리하였습니다.