[CS] 2.4 IP 주소

angie·2022년 10월 29일
1

CS

목록 보기
7/8
post-thumbnail

**본 포스팅은 '면접을 위한 CS 전공지식 노트'라는 책을 기반으로 공부한 내용을 정리한 것입니다.

1. ARP

컴퓨터와 컴퓨터 간의 통신은 "IP 주소에서 ARP를 통해 MAC 주소를 찾아 MAC 주소를 기반으로 통신"

- MAC 주소 : 네트워크 세그먼트의 데이터 링크 계층에서 통신을 위한 네트워크 인터페이스에 할당된 고유 식별자

ARP = Address Resolution Protocl (주소 결정 프로토콜)

ARP는 이더넷(Ethernet) 통신의 꽃이라고 한다!

  • IP 주소로부터 MAC 주소를 찾아 MAC 주소를 기반으로 통신
  • 가상 주소인 IP 주소를 실제 주소인 MAC 주소로 변환

ARP 동작 과정

핵심은 ARP request가 broadcast가 된다는 것!

  • LAN 통신을 하고자 하는 상대방 PC나 서버의 IP는 아는데 MAC 주소를 모를 때,
  • ARP request 패킷을 보내고, ARP reply를 받아서 MAC 주소를 알아내어 상대방에게 패킷을 보낼 수 있게 된다.
ARP request = Broadcast
  • 브로드캐스트 : 송신 호스트가 전송한 데이터가 네트워크에 연결된 모든 호스트에 전송되는 방식
ARP reply = Unicast
  • 유니캐스트 : 고유 주소로 식별된 하나의 네트워크 목적지에 1:1로 데이터를 전송하는 방식

2. 홉바이홉 통신

: IP주소를 통해 통신하는 과정

  • hop : 통신망에서 패킷이 여러 개의 라우터를 건너가는 모습을 비유한 것
  • 각각의 라우터에 있는 라우팅 테이블의 IP를 기반으로 패킷을 전달하고 다시 전달

라우팅 테이블

  • 라우터에 들어가있는 목적지 정보들과 그 목적지로 가기 위한 방법들이 들어 있는 리스트
  • 송신지에서 수신지까지 도달하기 위해 사용
  • 게이트 웨이와 모든 목적지에 대해 해당 목적지에 도달하기 위해 거쳐야할 다음 라우터의 정보를 포함

게이트웨이

  • 서로 다른 통신망, 프로토콜을 사용하는 네트워크 간의 통신을 가능하게 하는 관문 역할의 컴퓨터나 소프트웨어
  • 다른 네트워크로 들어가는 입구 역할을 하는 네트워크 포인트
  • 서로 다른 네트워크상의 통신 프로토콜을 변환해주는 역할

3. IP 주소 체계

IP 주소
		- IPv4
    	- IPv6

IPv4 vs IPv6

  • IPv4 : 32비트를 9비트 단위로 점을 찍어 표기
  • IPv6 : 64비트를 16비트 단위로 점을 찍어 표기

클래스 기반 할당 방식

  • 클래스 A, B, C : 일대일 통신에 사용
  • 클래스 D : 멀티캐스트 통신에 사용
  • 클래스 E : 예비용으로 사용
  • 맨 앞에 있는 비트('0', '10' , '110'...)를 구분비트라 함 (이진수로 표현했을 때)
  • 구분 비트를 통해 클래스 간의 IP가 나눠짐

A 클래스

  • 범위 : 0.0.0.0 ~ 127.255.255.255 (십진수)
  • 네트워크 주소 : 첫번째 바이트

B 클래스

  • 범위 : 128.0.0.0 ~ 191.255.255.255
  • 네트워크 주소 : 첫번째 ~ 두번째 바이트

C 클래스

  • 범위 : 192.0.0.0 ~ 223.255.255.255
  • 네트워크 주소 : 첫번째 ~ 세번째 바이트

네트워크 주소와 호스트 주소

  • 첫번째 주소는 네트워크 주소
  • 마지막 주소는 브로드캐스트용 주소
예시

클래스 A, 12.0.0.0이란 네트워크를 부여했을 때
-> 12.0.0.1 ~ 12.255.255.254의 호스트 주소를 부여받은 것
-> 마지막 주소인 12.255.255.255의 경우 브로드캐스트용으로 남겨두어야해서 사용하면 안됨

IP 주소 예시

  1. 10.3.4.3
    • 클래스 : A
    • 네트워크 부분 : 10.0.0.0
    • 호스트 부분 : 3.4.3
  2. 132.12.11.4
    • 클래스 : B
    • 네트워크 부분 : 132.12.0.0 (B 클래스는 두번째 바이트까지 네트워크 주소)
    • 호스트 부분 : 11.4
  3. 203.10.1.1
    • 클래스 : C
    • 네트워크 부분 : 203.10.1.0 (C 클래스는 세번째 바이트까지 네트워크 주소)
    • 호스트 부분 : 1

DHCP

  • 동적 호스트 구성 프로토콜 (Dynamic Host Configuration Protocol)
  • 호스트 IP 구성 관리를 단순화하는 IP 표준
  • IP주소 및 기타 통신 매개변수를 자동으로 할당하기 위한 네트워크 관리 프로토콜
  • 인터넷에 접속할 때마다 자동으로 IP 주소를 할당할 수 있음

NAT

  • 네트워크 주소 변환 (Network Address Translation)
  • 패킷이 라우팅 장치를 통해 전송되는 동안 패킷의 IP 주소 정보를 수정하여 IP 주소를 다른 주소로 매핑
  • 사설 네트워크에 속한 여러 개의 호스트가 하나의 공인 IP 주소를 사용하여 인터넷에 접속하기 위해 사용

공유기와 NAT

  • 인터넷 공유기에 NAT 기능이 탑재되어 있기 때문에 인터넷 회선 하나를 공유기를 사용해 여러 PC가 사용할 수 있음

NAT를 이용한 보안

  • 내부 네트워크에서 사용하는 IP 주소와 외부에 드러나는 IP 주소를 다르게 유지할 수 있음

NAT의 단점

  • 실제로 접속하는 호스트 숫자에 따라서 접속 속도가 느려질 수 있음
profile
better than more

0개의 댓글