본문 바로가기
망 (Network)

[네트워크] 네트워크 계층 작업과 프로토콜

728x90

서브넷의 필요성

  • 사물인터넷(IoT)의 확산으로 IP 주소가 빠르게 고갈
  • 기존 IP 주소 클래스 방식(C 클래스: 256개, B 클래스: 65,535개)은 조직의 규모에 적합하지 않은 경우가 많음
  • 이를 해결하기 위해 하나의 IP 주소 클래스를 서브넷으로 나눠서 사용

서브넷 마스크 : IP 주소를 네트워크 주소와 호스트 주소로 구분하는 역할

  • 1로 표시된 부분: 네트워크 주소
  • 0으로 표시된 부분: 호스트 주소
  • 서브넷 마스크는 항상 앞에서부터 1이 연달아 나타남
  • IP 주소 뒤에 1의 개수를 사용해 간단히 표현 가능

 

네트워크 분할 방법

C 클래스 : 256개의 호스트 주소를 가질 수 있음, 228.255.75.0 ~ 228.255.75.255

C 클래스를 A 회사와 B 회사에게 반씩 나눔

  • A 회사: 앞비트 0, 이진수 범위: 00000000 ~ 01111111, 십진수 범위: 228.255.75.0 ~ 228.255.75.127
  • B 회사: 앞비트 1, 이진수 범위: 10000000 ~ 11111111, 십진수 범위: 228.255.75.128 ~ 228.255.75.255

C 클래스 전체 서브넷 마스크는 255.255.255.0 (이진수: 11111111 11111111 11111111 00000000)

2개로 분할시 서브넷 마스크는 255.255.255.128 (이진수: 11111111 11111111 11111111 10000000)

서브넷 접두사 표기법: /25

 

네크워크 주소를 나타내는 1의 개수가 늘어날 때마다 2의 지수승으로 네트워크는 분할

=> 2개로 분할 시 10000000, 4개로 분할 시 11000000

 

C 클래스 분할과 서브넷 마스크

C 클래스 2개로 분할시 -> 10진수로 255.255.255.128이며 /25라 표시

2B 클래스 분할과 서브넷 마스크

B 클래스 2개로 분할시 ->  10진수로 255.255.128.0이며 /17라 표시

 

짝수뿐만 아니라 홀수개의 서브넷도 만들 수 있음


주소변환 프로토콜

주소변환의 필요성 : 도착한 LAN의 안쪽에서 호스트를 찾는다던가, IP 주소로 LAN 내부에서 통신을 하는 경우에는 MAC 주소 필요

ARP : 주소변환 서버 없이도 IP 주소를 MAC 주소로 바꾸는 프로토콜

  • 특정 IP의 MAC 주소를 알고 싶은 호스트는 다른 호스트들에서 질문
  • 해당 질문은 LAN 전체에 브로드캐스팅
  • 질문을 받은 호스트 중 해당 IP를 가진 노드는 자신의 MAC 주소를 알려줌
  • APR의 성능을 높이기 위해 각 호스트들은 획득한 ARP 정보를 캐시에 보관, 시간이 지나면 삭제

해당 컴퓨터는 IP 주소 192.168.0.1, 192.168.0.5, 192.168.0.6에 대한 MAC 주소를 캐시에 저장

192.168.0.255는 브로드캐스트 주소이며, 물리주소는 항상 ff-ff-ff-ff-ff-ff로 나타남

 

GARP(Gratuitous ARP)

  • 기존의 컴퓨터가 사용하던 IP를 변경하여 IP 충돌이 발생한 경우, 해당 IP를 먼저 사용하고 있던 호스트에게 우선권이 주어짐
  • 충돌이 없다는 것을 확인한 이후 자신의 IP주소와 MAC 주소를 전체에게 브로드케스트 함
  • 응답이 필요 없는 ARP

 

RARP(Reverse ARP) : 연산능력이나 저장장치가 없는 더미 터미널도 IP 주소 필요, 이런 단말기가 IP 주소를 얻기 위해 사용하는 프로토콜

  • MAC주소로부터 IP 주소를 얻는 프로토콜
  • 단점은 브로드케스트 메시지가 LAN에만 전파, 라우터를 넘어서 메시지 전송 불가

 

BOOTP(bootstrap protocol) : 라우터를 넘어서 주소변환을 할 수 있도록 만든 것

  • UDP라고 불리는 전송계층의 프로토콜 사용 => 라우터를 넘어서 메시지 전달 가능

고정 IP 방식 : 모든 호스트의 IP 주소와 관련 값을 일일히 수동으로 설정해야 함, IP 주소 관리

유동 IP 방식 : 컴퓨터가 부팅할 때 IP 주소, 서브넷 마스크, 게이트웨이, DNS 주소를 자동으로 설정

 

DHCP(Dynamic Host Configuration Protocol) : 유동 IP 방식에서 사용하는 프로토콜

  • BOOTP와 작동 방식 유사
  • 메시지를 전체에게 브로드케스트 하면 DHCP 서버가 사용하지 않는 주소와 서브넷 마스크, 게이트 웨이 주소, DNS 주소를 해당 컴퓨터에게 전달

프로토콜 특징
ARP IP주소 -> MAC 주소 변환
GARP IP 주소, MAC 주소 등록
RARP MAC 주소 -> IP 주소 변환(다른 LAN 불가)
BOOTP MAC 주소 -> IP 주소 변환(다른 LAN 가능)
DHCP MAC 주소 -> IP 주소 변환
(자동 IP 할당 / 주기적 IP 변경)

ICMP : 감시와 메시지 전송에 사용되는 프로토콜

ping : ping 명령어 다음에 IP 주소를 쓰면 해당 호스트로 패킷을 보내고, 해당 호스트는 ping에 대한 답신replay 메시지를 보냄

ping을 사용하면 해당 호스트가 살아있는지 혹은 죽었는지를 알 수 있을 뿐 아니라, 서버까지 패킷이 오고 가는데 걸리는 시간도 알 수 있음

Type 의미 설명
0 Echo reply Echo 응답(ping 응답), Echo request를 받은 호스트는 이에 대한 응답
3 destination unreachable 도달 불가, 패킷이 목적지 주소를 찾지 못할 때 발생하는 메시지
5 redirect 경로 변경, 패킷의 경로가 잘못 설정 되었다고 판단될 때 보내는 메시지.
8 Echo request Echo 요청(ping 요청), ping 명령어에서 호스트까지 메시지를 보내는 것
11 time exceeded TTL 초과, 패킷의 TTL이 0이 되는 경우 발생하는 메시지
30 trace route 라우팅 경로 추적, 해당 호스트까지 가는 경로를 추적, 패킷이 어떤 라우터를 거쳐서 목적지 까지 도달하는지에 대한 경로를 알려줌

728x90

'망 (Network)' 카테고리의 다른 글

[네트워크] TCP와 소켓 프로그래밍  (1) 2024.12.05
[네트워크] 전송 계층  (0) 2024.12.05
[네트워크] 인터넷 프로토콜(IP)  (0) 2024.12.03
[네트워크] 라우팅 알고리즘  (1) 2024.11.30
[네트워크] IP 주소  (1) 2024.11.30