컴퓨터 간의 통신은 IP 주소에서 ARP를 통해 MAC 주소를 찾아 MAC 주소를 기반으로 통신한다.
ARP란 IP 주소로부터 MAC 주소를 구하는 IP와 MAC 주소의 다리 역할을 하는 프로토콜이며 가상 주소인 IP 주소를 실제 주소인 MAC 주소로 변환한다.
RARP는 ARP와 역순으로 동작한다.
ARP의 주소를 찾는 과정이다.
A가 ARP Request 브로드캐스트를 보내 IP주소인 120.70.80.3에 해당하는 MAC 주소를 찾는다.
위 주소에 맞는 B가 ARP Reply 유니캐스트를 통해 MAC 주소를 반환 후 IP주소에 맞는 MAC주소를 찾는다.
- 브로드캐스트 : 통신 호드트가 전송한 데이터가 네트워크에 연결된 모든 호스트에 전송되는 방식
- 유니캐스트 : 고유 주소로 식별된 하나의 네트워크 목적지에 1:1로 데이터를 전송하는 방식
IP주소를 통해 통신화는 과정이며 hop이라는 뜻 자체가 건너뛰는 모습을 의미하며 각 패킷이 여러개의 라우터를 건너가는 모습을 비유적 표현한 것이다.
위 그림처럼 여러 서브네트워크 안에 있는 라우터의 라우팅 테이블 IP를 기반으로 패킷을 전달하는 것을 반복해 라우팅을 수행하며 최종 목적지까지 패킷을 전달한다.
- 라우팅 : IP 주소를 찾아가는 과정
송신지에서 수신지까지 도달하기 위해 사용되며 라우터에 들어가 있는 목적지 정보들과 그 목적지로 가기 위한 방법이 들어 있는 리스트이다.
게이트웨이와 모든 목적지에 대해 해당 목적지에 도달하기 위해 거쳐야 할 다음 라우터의 정보를 가진다.
서로 다른 통신망, 프로토콜을 사용하는 네트워크 간의 통신을 가능하게 하는 관문 역할을 하는 컴퓨터 or 소프트웨어를 말한다.
사용자는 인터넷 접속을 위해 여러 게이트웨이를 거쳐야 하며 게이트웨이는 서로 다른 네트워크 상의 통신 프로토콜을 변환해주는 역할을 하기도 한다.
게이트웨이는 라우팅 테이블을 통해 볼 수 있도 라우팅 테이블은 cmd에서 netstat-r 명령어를 통해 확인할 수 있다.
IP 주소는 IPv4와 IPv6로 나뉜다.
클래스 A,B,C 일대일 통신으로 상용되고 클래스 D는 멀티캐스트 통신, 클래스 E는 앞으로 사용할 예비용으로 쓰는 방식이다.
맨 왼쪽에 있는 비트를 '구분 비트'라고 하고 이를 통해 클래스 간의 IP가 나눠진다. 클래스 A에서 가질 수 있는 범위를 십진수로 표현하면 0.0.0.0~ 127.255.255.255이다.
네트워크의 첫 번째 주소는 네트워크 주소로 사용되고 가장 마지막 주소는 브로드캐스트용 주소로 네트워크에 속해 있는 모든 컴퓨터에 데이터를 보낼 때 사용된다.
네트워크 구별 주소와 브로드캐스트 주소를 제외한 나머지 주소를 호스트 주소로 사용할 수 있는데
버리는 주소가 많은 단점이 있고 이를 해소하기 위해 DHCP, IPv6, NAT가 나온다.
IP 주소 및 기타 통신 매개변수를 자동으로 할당하기 위한 네트워크 관리 프로토콜이며 네트워크 장치의 IP주소를 수동으로 설정할 필요 없이 인터넷 접속 시 자동으로 IP 주소를 할당한다.
패킷이 라우팅 장치를 통해 패킷의 IP 주소 정보를 수정하여 IP주소를 다른 주소로 매핑하는 방법이다. IPv4 주소 체계만으로는 많은 주소들을 모두 감당하지 못해 NAT로 공인 IP/사설 IP로 나눠 많은 주소를 처리한다.
예를 들어 한 회사에 여러 사원이 각각의 사설 IP를 가지지만 NAT 장치를 통해 하나의 공인 IP로 변환해 외부 인터넷에 요청할 수 있다.
공유기 하나로 여러 PC를 연결해 사용이 가능한 것은 공유기에 NAT 기능이 탑재되어 있기 때문이다.
NAT을 이용하면 내부 네트워크에서 사용하는 IP주소와 외부에 드러나는 IP 주소를 다르게 유지할 수 있기 때문에 내부 네트워크에 대한 어느 정도의 보안이 가능해진다.
여러 명이 동시 접속하게 되므로 호스트 숫자에 따라 접속 속도가 느려질 수 있다.
오랜만에 공부했던 것을 다시 보니 뭔가 반갑기도 하고 재밌기도 하다. NAT은 처음 들어보는것 같지만 이런것이 있다는 것을 알고 있었기에 새로운 것을 하나 더 알아간다고 생각된다.