IP 주소
1. ARP(Address Resolution Protocol)
IP 주소로부터 MAC 주소를 구하는 IP와 MAC 주소의 다리 역할을 하는 프로토콜
ARP를 통해 가상 주소인 IP 주소를 실제 주소인 MAC 주소로 변환 (논리적 주소 → 물리적 주소)
RARP는 반대로 MAC 주소를 가상 주소인 IP 주소로 변환 (물리적 주소 → 논리적 주소)
장치 A가 ARP Request 브로드캐스트를 보내서 IP 주소에 해당하는 MAC 주소 탐색
해당 주소에 맞는 장치 B가 ARP Reply 유니캐스트를 통해 MAC 주소를 반환
이 과정을 거쳐 IP 주소에 맞는 MAC 주소를 찾게 됨.
2. 홉바이홉 통신
IP 주소를 통해 통신하는 과정
통신 장치에 있는 라우팅 테이블의 IP를 통해 시작 주소부터 다음 IP로 계속 이동하는 '라우팅' 과정을 거쳐 패킷이 최종 목적지까지 도달하는 통신을 말함.
라우팅 테이플(Routing table)
송신지에서 수신지까지 도달하기 위해 사용
라우터에 들어가 있는 목적지 정보들과 그 목적지로 가기 위한 방법이 들어 있는 리스트를 뜻함.
라우팅 테이블에는 게이트웨이와 모든 목적지에 대해 해당 목적지에 도달하기 위해 거쳐야 할 다음 라우터의 정보를 가지고 있음.
게이트웨이(Gateway)
서로 다른 통신망, 프로토콜을 사용하는 네트워크 간의 통신을 가능하게 하는 관문 역할을 하는 컴퓨터나 소프트웨어를 두루 일컫는 용어
사용자는 인터넷에 접속하기 위해 수많은 게이트웨이를 거쳐야 함.
게이트웨이는 서로 다른 네트워크상의 통신 프로토콜을 변환해 주는 역할을 하기도 함.
게이트웨이를 확인하는 방법은 라우팅 테이블을 통해 확인 가능
3. IP 주소 체계
IP 주소는 IPv4와 IPv6로 나뉨.
IPv4는 32비트를 8비트 단위로 점을 찍어 표기
IPv6는 64비트를 16비트 단위로 표기
클래스 기반 할당 방식(Classful Network Addressing)
초기 IP 주소 체계는 A, B, C, D, E 다섯 개의 클래스로 구분하는 클래스 기반 할당 방식을 사용
클래스 A, B, C는 일대일 통신, D는 멀티캐스트, E는 예비용으로 사용
각 클래스의 네트워크의 첫 번째 주소는 네트워크 주소로 사용되고
마지막 주소는 브로드캐스트용 주소로 네트워크에 속해 있는 모든 컴퓨터에 데이터를 보낼 때 사용
클래스 A로 12.0.0.0이란 네트워크를 부여받았다면 12.0.0.0은 네트워크 구별 주소로 사용하면 안 되고 가장 마지막 주소인 12.255.255.255도 브로드캐스트용으로 남겨두어야 함. 따라서 12.0.0.1 ~ 12.255.255.254를 호스트 주소로 사용 가능
그러나 이 방식은 버리는 주소가 많은 단점이 있어서 이를 해소하기 위해 DHCP와 IPv6, NAT이 나옴.
DHCP(Dynamic Host Configuration Protocol)
IP 주소 및 기타 통신 매개변수를 자동으로 할당하기 위한 네트워크 관리 프로토콜
네트워크 장치의 IP 주소를 자동으로 인터넷에 접속할 때마다 할당할 수 있음
많은 라우터와 게이트웨이 장비에 DHCP 기능이 있으며 대부분의 가정용 네트워크에서 IP 주소를 할당
NAT(Network Address Translation)
패킷이 라우팅 장치를 통해 전송되는 동안 패킷의 IP 주소 정보를 수정하여 IP 주소를 다른 주소로 매핑하는 방법
IPv4 주소 체계만으로는 많은 주소들을 감당하지 못하는 단점이 있는데,
이를 해결하기 위해 NAT로 공인 IP와 사설 IP로 나눠서 많은 주소를 처리
NAT을 가능하게 하는 소프트웨어는 ICS, RRAS, Netfilter 등
회사 내에 있는 사람은 하나의 공인 IP인 121.165.151.200을 기반으로,
각각의 다른 IP를 가지는 것처럼 인터넷을 사용 가능
NAT은 사설 IP를 공인 IP로 변환하거나 공인 IP를 사설 IP로 변환하는데 쓰임.
공유기와 NAT
NAT을 쓰는 이유는 주로 여러 대의 호스트가 하나의 공인 IP 주소를 사용하여 인터넷에 접속하기 위해서 임.
인터넷 회선 하나를 개통하고 인터넷 공유기를 달아 여러 PC를 연결하여 사용할 수 있는데,
이것이 인터넷 공유기에 NAT 기능이 탑재되어 있기 때문임.
NAT을 이용한 보안과 단점
NAT을 이용하면 내부 네트워크에서 사용하는 IP 주소와 외부에 드러나는 IP 주소를 다르게 유지할 수 있기 때문에 내부 네트워크에 대한 어느 정보의 보안이 가능해짐 그러나 여러 명이 동시에 인터넷을 접속하게 되므로 실제로 접속하는 호스트 숫자에 따라 접속 속도가 느려질 수 있음.
4. IP 주소를 이용한 위치 정보
IP 주소는 인터넷에서 사용하는 네트워크 주소이기 때문에 이를 통해 동 또는 구까지 추적이 가능
'면접을 위한 CS 전공지식 노트'를 기반으로 작성한 글입니다.