새소식

Computer Science/Network

네트워크 계층 : 목적지에 데이터 전달

  • -

 

본 게시물은 ‘미즈구치 카츠야(저), 이승룡(역), ⌜모두의 네트워크⌟, 길벗, 2018’ 을 인용하였습니다.

 

1. 네트워크 계층의 역할

네트워크 간의 연결 구조

  • 데이터 링크 계층은 이더넷 규칙 기반으로 데이터 전송 담당
    • 같은 네트워크의 컴퓨터로 데이터 전송O
    • 다른 네트워크의 컴퓨터로 데이터 전송X
  • 네트워크 계층은 네트워크 간의 통신을 가능하게 함
  • IP 주소 : MAC 주소가 아닌, 네트워크를 식별할 수 있는 주소
    • cf. MAC 주소 : LAN에서는 통신할 수 있으나 다른 네트워크에 데이터 전송X
    • 어떤 네트워크의 어떤 컴퓨터인지 구분할 수 있도록 하는 주소
    • 다른 네트워크에 있는 목적지 지정O
  • 목적지를 IP 주소로 지정하면 데이터를 보낼 수 있으나, 데이터를 어떤 경로로 보낼지도 결정해야 함
    • 라우팅(routing) : 목적지 IP 주소까지 어떤 경로로 데이터를 보낼지 결정하는 것으로 라우터 장비가 수행
  • 라우터(router)
    • 데이터 목적지 정해지면, 해당 목적지까지 어떤 경로로 가는 것이 좋은지 알려주는 기능
    • 거리 관계없이 다른 네트워크로 데이터 전송O
    • 레이어 3 스위치라고도 함
    • 네트워크를 분할해 라우팅할 수 있는 장비
    • 라우팅 테이블(routing table)로 경로 정보 등록/관리

 

IP란?

Internet Protocol

  • 네트워크 계층의 프로토콜
  • 네트워크 계층에서 캡슐화할 때 IP 헤더 붙임 : 출발지/목적지 IP 주소 포함됨
    • IP 패킷 : IP 헤더 + 데이터
    • cf. 데이터 링크 계층 : 프레임

 

 

 

 

2. IP 주소의 구조

IP 주소란?

  • IP 주소는 ISP(인터넷 서비스 제공자)에게 받을 수 있음
  • IP 버전 : IPv4, IPv6
    • IPv4 주소 : 32비트, 약 43억개 만들 수 있음
    • IP 주소가 부족해지면서 IPv6 사용(128비트)
  • IP 주소 종류 : 공인 IP 주소&사설 IP 주소
    • IPv4 주소의 수가 고갈되면서 인터넷에 직접 연결되는 컴퓨터/라우터에는 공인 IP 주소 할당,
      회사/가정 LAN에 있는 컴퓨터는 사설 IP 주소 할당
    • ISP가 제공하는 공인 IP 주소는 라우터에만 할당하고,
      LAN 안에 있는 컴퓨터에는 LAN 네트워크 관리자가 사설 IP 할당 혹은 라우터의 DHCP 기능 사용해 주소 자동 할당 -> 공인 IP 주소 절약
      • DHCP(Dynamic Host Configuration Protocol) : IP 주소 자동 할당 프로토콜

 

IP 주소 표현

  • IP 주소는 32비트, 10진수 표시
    • cf. MAC 주소 : 48비트, 16진수 표시
  • 10진수로 표현하지만 실제 IP 주소는 2진수 
  • 10진수 32비트 구성의 IP 주소를 8비트로 나누어 '옥텟(octet)'이라고 함

  • 8비트 2진수 -> 10진수 변환

  • IP 주소는 네트워크 ID&호스트 ID로 나뉨
    • 네트워크 ID : '어떤 네트워크'인지 나타냄
    • 호스트 ID : '해당 네트워크의 어느 컴퓨터'인지 나타냄

 

 

 

3. IP 주소의 클래스 구조

  • IP 주소는 비트로 구분하나, 네트워크 ID를 크게 만들거나 호스트 ID를 작게 만들어 네트워크 크기 조정O
  • 네트워크 크기는 '클래스' 개념으로 구분
  • 클래스 종류
클래스 이름 내용 주소 범위
A class 대규모 네트워크 주소 0.0.0.0 ~ 127.255.255
B class 중형 네트워크 주소 128.0.0.0 ~ 191.255.255.255
C class 소규모 네트워크 주소 192.0.0.0 ~ 223.255.255.255
D class 멀티캐스트(multicast) 주소 224.0.0.0 ~ 239.255.255.255
E class 연구/특수용도 주소 240.0.0.0 ~ 255.255.255.255

 

▶ 일반 네트워크에서는 A~C 클래스까지 사용O

  • A 클래스 : 처음 8비트가 네트워크 ID, 다음 24비트가 호스트 ID

  • B 클래스 : 처음 16비트가 네트워크 ID, 다음 16비트가 호스트 ID

  • C 클래스 : 처음 24비트가 네트워크 ID, 다음 8비트가 호스트 ID

▶ 공인 IP&사설 IP 주소 포함한 클래스 범위

  • A 클래스 : 1.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

 

▶ 클래스 별 공인 IP&사설 IP 주소 범위

  • cf. 사설 IP 주소는 공인 IP 주소로 사용X
종류 공인 IP 주소 범위 사설 IP 주소 범위
A Class 1.0.0.0 ~ 9.255.255.255
11.0.0.0 ~ 126.255.255.255
10.0.0.0 ~ 10.255.255.255
B Class 128.0.0.0 ~ 172.15.255.255
172.32.0.0 ~ 191.255.255.255
172.16.0.0 ~ 172.31.255.255
C Class 192.0.0.0 ~ 192.167.255.255
192.169.0.0 ~ 223.255.255.255
192.168.0.0 ~ 192.168.255.255

 

 

 

 

4. 네트워크 주소&브로드캐스트 주소의 구조

  • IP 주소에는 네트워크 주소&브로드캐스트 주소가 있음
  • 컴퓨터나 라우터가 자신의 IP로 사용하면 안되는 주소

  • 네트워크 주소 : 호스트 ID가 10진수로 0, 2진수로 00000000
    • 전체 네트워크에서 작은 네트워크를 식별하는 데 사용됨
    • 즉, 전체 네트워크의 대표 주소
    • 192.168.1.1 ~ 192.168.1.6의 IP 주소 갖는 컴퓨터는 192.168.1.0(네트워크 구조)의 네트워크에 있다고 할 수 있음
  • 브로드캐스트 주소 : 호스트 ID가 10진수로 255, 2진수로 11111111
    • 네트워크에 있는 컴퓨터/장비 모두에게 한 번에 데이터를 전송하는 데 사용되는 전용 IP 주소
    • 전체 네트워크에 데이터를 전송하려면 호스트 ID에 255를 설정하면 됨

 

 

 

 

5. 서브넷의 구조

서브넷이란?

  • 서브넷팅(subenting) : 네트워크를 분할하는 것
    • 많은 수의 컴퓨터가 브로드캐스트 패킷을 전달한다면 네트워크가 혼잡해짐
    • A 클래스의 대규모 네트워크를 작은 네트워크로 분할해 브로드캐스트로 전송되는 패킷 범위 좁힐 수 있음
      => 효과적인 네트워크 활용O
  • 서브넷(subnet) : 분할된 네트워크
  • 기존의 네트워크 ID, 호스트 ID로 구성되어 있던 것이 네트워크 ID, 서브넷 ID, 호스트 ID로 나누어지게 됨
    • 원래 호스트 ID로 사용되던 비트를 서브넷 ID로 바꿈

 

서브넷 마스크

  • IP 주소를 서브넷팅하면, 어디까지가 네트워크 ID/호스트 ID인지 판단 어려울 때가 있어
    서브넷 마스크라는 값을 사용
  • 서브넷 마스크(subnet mask) : 네트워크 ID와 호스트 ID를 식별하기 위한 값
  • 32비트 값으로 A 클래스는 255.0.0.0, B 클래스는 255.255.0.0, C 클래스는 255.255.255.0

A 클래스 서브넷 마스크
B 클래스 서브넷 마스크
C 클래스 서브넷 마스크

  • Prefix 표기법 : 서브넷 마스크를 슬래시(/비트 수)로 나타낸 것
    • 255.255.255.0 은 /24

 

▶ 예시 : C 클래스 IP 주소 서브넷팅

  • C 클래스는 일반적으로 네트워크 ID가 24비트이나, 네트워크 ID를 28비트로 변경하면 4비트를 호스트 ID에서 빌리게 되는것
    • 네트워크 ID 24비트, 서브넷 ID 4비트, 호스트 ID 4비트

  • 서브넷 마스크 : 255.255.255.240
  • 서브넷 마스크의 Prefix 표기법 : /28

 

 

 

6. 라우터 구조

라우터(router)

  • 스위치(Layer2 Switch)만 있는 네트워크는 모든 컴퓨터, 스위치가 동일 네트워크에 속함
    • 허브도 스위치와 같이 네트워크 분리X

  • 서로 다른 네트워크와 통신하려면, 라우터가 필요하고 라우터는 네트워크를 분리할 수 있음

  • 다른 네트워크에 데이터 전송 시, 라우터 IP 주소 설정 후 데이터 전송O

  • 라우터의 IP 주소를 설정하는 것은 네트워크의 출입구를 설정하는 것으로 기본 게이트웨이(default gateway)라고 함
  • 라우터 IP 주소를 지정하는 이유 : 다른 네트워크로 데이터 전송 시 어디로 전송해야 할 지 몰라, 네트워크 출입구를 지정하고 일단 라우터로 데이터 전송
  • 인터넷 프로토콜(TCP/IP) 속성 창에서 '자동으로 IP 주소 받기'가 체크되어 있으면 네트워크 외부 접속 시 사용되는 기본 게이트웨이가 자동 설정 됨

  • 기본 게이트웨이 설정과 동시에 라우터의 라우팅(routing) 기능도 필요

 

라우팅

  • 라우팅(routing) : 경로 정보 기반으로 현재의 네트워크 -> 다른 네트워크로 최적 경로 통해 데이터 전송
  • 라우팅 테이블(routing table) : 현재 네트워크 -> 다른 네트워크로의 최적 경로 정보가 등록되는 테이블
  • 라우팅 테이블에 등록되는 경로 정보

  • 라우팅 테이블 등록되는 방법
    • 수동 등록 : 소규모 네트워크 적합
    • 자동 등록 : 대규모 네트워크 적합
      • 하나하나 라우터에 정보 등록 힘듦
      • 수정 시 수동 변경 -> 작업량 많아짐
      • 자동 등록 방법 : 라우터 칸에 경로 정보 서로 교환해 라우팅 테이블 정보를 자동으로 수정해줌
  • 라우팅 프로토콜 : 라우터 간의 라우팅 정보 교환 위한 프로토콜
    • 라우팅 프로토콜 설정해 라우터 간의 경로 정보 서로 교환 -> 라우팅 테이블에 등록
    • 대표적인 라우팅 프로토콜 : ROP, OSPF, BGP 등

 

 

 

내용 정리

  • 서로 다른 네트워크 간의 통신에 '라우터' 필요
  • LAN 안에서는 MAC 주소만으로 통신 가능하나, 네트워크 간의 통신에는 IP주소 필요
  • 라우팅 : 경로 선택, 목적지 IP 주소까지 어떻게 데이터를 전달할 지 결정하는 것
  • 라우터의 라우팅 테이블에 경로 정보가 등록되어 있음
  • 네트워크 계층의 대표적인 프로토콜 : IP
  • 네트워크 계층에서 캡슐화할 때 IP 헤더를 추가하고, IP 헤더와 데이터를 합친 것을 패킷이라 함
  • 데이터를 다른 네트워크로 전달하려면 IP 주소가 필요험
  • IP 주소는 ISP에게 할당받음
  • IPv4의 IP 주소는 32비트
    IPv6의 IP 주소는 128비트 구성
  • IP 주소 종류 : 공인 IP&사설 IP
  • IP 주소는 네트워크 ID&호스트 ID로 나뉨
  • IP 주소는 A~E 클래스로 나누어지고 일반적으로 A~C 클래스 사용
  • 네트워크 주소, 브로드캐스트 주소는 컴퓨터에 설정X
  • 서브넷팅 : 네트워크를 분할하는 것
    서브넷 : 분할된 네트워크
  • 서브넷팅 되면, 구성이 '네트워크 ID + 호스트 ID' -> '네트워크 ID + 서브넷 ID + 호스트 ID'로 변경됨
  • 서브넷 마스크 : 네트워크 주소, 호스트 주소 식별하는 값
  • 클래스 별 서브넷 마스크는 A 클래스가 255.0.0.0, B 클래스가 255.255.255.0, C 클래스가 255.255.255.0
  • Prefix 표기법 : 서브넷 마스크를 /비트 로 나타냄
  • 서로 다른 네트워크와 통신하려면 라우터가  필요함
  • 라우터는 네트워크를 분할할 수 있으나, 스위치/허브는 네트워크 분할 불가
  • 다른 네트워크로 데이터 전송하려면 기본 게이트웨이를 설정해야 함
  • 라우팅 : 경로 정보 기반으로 현재 네트워크 -> 다른 네트워크로 최적 경로 통해 데이터 전송하는 방식
  • 라우팅 테이블 : 경로 정보 등록되어 있는 테이블
  • 라우팅 프로토콜 : 라우터 간의 라우팅 정보를 서로 교환하기 위한 프로토콜

 

 

 

용어 정리

  • 네트워크 계층(Network layer) : 다른 네트워크와 통신하기 위한 경로 설정 위해 라우터 통한 라우팅하고 패킷 전송을 담당함
  • IP(Internet Protocol, 인터넷 프로토콜) : 인터넷에 있는 한 컴퓨터 -> 다른 컴퓨터로 데이터 보내는 데 사용되는 네트워크 계층 프로토콜
  • IP 주소(IP address) : 컴퓨터 네트워크에서 장치들이 서로를 인식/통신하기 위해 사용하는 주소
  • IP 주소 클래스 : IPv4에서 사용하는 주소 그룹에는 5개가 있고 A, B, C 클래스는 네트워크 ID/호스트 ID로 구성되며 D 클래스는 멀티캐스트 주소로 사용, E 클래스는 필요에 따라 사용하기 위해 확보한 것
  • 라우터(router) : 서로 다른 네트워크를 연결해 주는 장치로 현재 네트워크 -> 다른 네트워크로 패킷 전송할 수 있게 함
  • 라우팅(routing) : 네트워크에서 패킷을 목적지로 보낼 때 목적지까지 갈 수 있는 여러 경로 중 한 가지 경로를 설정해주는 과정
  • 라우팅 테이블(routing table) : 목적지 주소를 목적지에 도달하기 위한 노선으로 변환시킬 목적으로 사용됨. 다른 네트워크로 가기 위한 가장 좋은 라우터 정보를 갖고 있음
  • 서브넷(subnet) : 큰 네트워크를 분할해 만든 작은 네트워크
  • 서브넷팅(subneting) : 네트워크 분할 위해 IP 주소의 구성을 변경하는 작업
  • 서브넷 ID : IP 주소의 네트워크 부분 늘리기 위해 서브넷 마스크로 사용되는 비트로 서브넷 비트(subnet bits)라고도 함
  • 서브넷 마스크(subnet mask) : IP 주소의 네트워크 부분만 나타나게 해 같은 네트워크인지 판별하게 하는 마스크
  • 멀티캐스트(multicast) : 한 컴퓨터(호스트)에서 패킷을 여러 컴퓨터로 동시에 전송하는 것
  • 브로드캐스트(broadcast) : IP 네트워크에 있는 모든 컴퓨터(호스트)로 데이터를 전송하는 방식
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.