🌱 ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [모두의 네트워크] 5장 - 네트워크 계층 : 목적지에 데이터 전달하기
    Reading/Tech 2022. 7. 8. 04:21
    🍀 목차
    LESSON 17 네트워크 계층의 역할
    LESSON 18 IP 주소의 구조
    LESSON 19 IP 주소의 클래스 구조
    LESSON 20 네트워크 주소와 브로드캐스트 주소의 구조
    LESSON 21 서브넷의 구조
    LESSON 22 라우터의 구조
    📌Chapter Check-up

    이 장의 목표

    • IP를 이해한다.
    • 라우터를 이해한다.
    • IP 주소를 이해한다.
    • 서브넷을 이해한다.
    • 라우팅을 이해한다.

    복습

     물리 계층은 데이터를 전기 신호로 변환한다. 네트워크 장비로는 리피터와 허브가 있다.

    데이터 링크 계층은 네트워크 장비 간에 신호를 주고받는 규칙을 정하는 계층이다. 랜에서 데이터를 정상적으로 주고받기 위해 필요하다(데이터의 전송을 담당). 대표적인 규칙은 이더넷. 이더넷 헤더와 트레일러가 추가된 데이터인 프레임이 만들어지는 계층이기도 하다. 네트워크 장비로는 L2 스위치가 있다. 스위치는 MAC 주소 테이블을 가지고 있다. 

     

    LESSON 17 네트워크 계층의 역할

    네트워크 간의 연결 구조

     데이터 링크 계층의 기술로는 같은 네트워크에 있는 컴퓨터로는 데이터를 전송할 수 있지만, 다른 네트워크에 있는 목적지로 데이터를 전달하려면 네트워크 계층의 기술이 필요하다. 

     여기서 등장하는 네트워크 장비가 라우터이다. 

    라우터 : 데이터의 목적지가 정해지면 해당 목적지까지의 최적 경로를 알려준다. 라우팅 테이블이 있어 경로 정보를 등록/관리한다.

     

     네트워크에서도 목적지 주소를 알아야 데이터를 보낼 수 있기 때문에, 주소가 필요하다. 네트워크에서는 랜에서와는 다르게 IP 주소로 네트워크를 식별한다. IP 주소는 어떤 네트워크의 어떤 컴퓨터인지 구분할 수 있도록 하는 주소이다.

     목적지의 IP 주소를 알아냈다면 어떤 경로로 데이터를 보낼지 결정해야 하고, 이 과정을 라우팅이라고 한다.

     

    IP? 

      IP(Internet Protocol)는 네트워크 계층의 프로토콜이다. TCP/IP에서의 IP와 같다. 네트워크 계층에서는 캡슐화 시 IP 헤더를 붙인다. 

     

    IP 헤더(기본 20 bytes ~ 최대 60 bytes).

    ① 버전(Version) (4 bit) : IP 버전. IPv4일 경우 4, IPv6일 경우 6.

    ② 헤더 길이(Header Length) (4 bit) : IP 프로토콜 헤더의 길이.

    ③ 서비스 유형(Service Type) (8 bit) : 해당 패킷의 전송 우선순위 정보를 저장한다.

    ④ 전체 패킷 길이(Total Length) (16 bit) : 전체 IP 패킷의 길이를 바이트 단위로 나타낸다.

    ⑤ ID(Identification, 일련번호) (16 bit) : 패킷이 단편화 되었을 시 사용된다. 데이터를 식별할 수 있는 식별번호이다.

    ⑥ 조각 상태(Flags) (3 bit) : 처음 1 bit는 0으로 고정하고, 나머지 2 bit는 다음과 같다.

    • May Fragment : IP 라우터에 의해 분열되는가? 0 -> 분열 가능, 1 -> 분열 방지
    • More Fragment : 분열된 조각이 더 있는가? 0 -> 마지막 조각이다., 1 -> 조각이 더 있다.

    ⑦ 조각의 위치(Fragment Offset) (13 bit) : 조각에 저장된 원래 데이터의 바이트 범위를 나타낸다.

    ⑧ TTL(Time-To-Live) (8 bit) : 통과가능한 라우터의 남은 수. 라우터들은 패킷을 전달할 때마다 이 값을 하나씩 감소시킨다. (1~255 사이의 값으로 지정.)

    ⑨ 프로토콜(Protocol) (8 bit) : 데이터에 포함되는 상위 계층 프로토콜의 종류를 나타낸다. 1 -> ICMP, 6 -> TCP, 17 -> UDP.

    ⑩ 헤더 체크섬(Header Checksum) (16 bit) : IP 프로토콜 헤더 내용이 바르게 교환되고 있는지 점검한다. 라우터가 지나갈 때마다 재 계산을 하여 속도가 떨어진다. 

    ⑪ 출발지 IP 주소(Source IP address) (32 bit) 

    ⑫ 목적지 IP 주소(Destination IP address) (32 bit) 

    ※ Option : 경로배정/보안 등과 같은 제어 기능에 사용되는 40 bytes까지의 부가 정보.

     

     이처럼 IP 프로토콜을 사용하여 캡슐화할 때는 데이터에 IP 헤더가 추가된다. 이렇게 만들어진 것을 IP 패킷이라고 한다.


    LESSON 18 IP 주소의 구조

    IP 주소?

     IP 주소는 인터넷 서비스 제공자(ISP)에게 받을 수 있다. 인터넷이 널리 보급되며 기존 IPv4의 주소가 부족해지며 등장한 것이 IPv6이다. 128비트로 되어 있어 훨씬 많은 IP 주소를 만들 수 있다.

     

    • 공인 IP 주소 : ISP가 제공하는 주소. 인터넷에 직접 연결되는 컴퓨터나 라우터에 할당된다.
    • 사설 IP 주소 : 회사나 가정의 랜에 있는 컴퓨터에 할당된다. 네트워크 관리자가 할당하거나 라우터의 DHCP(Dynamic Host Configuration Protocol) 기능을 사용하여 자동으로 할당한다.

     

     MAC 주소는 48 bit로 구분하기 쉽도록 16진수로 표시하고, IP 주소는 32 bit로 구분하기 쉽도록 10진수로 표기한다. 8 bit(옥텟)로 나누어 표기한다.

     

    11000000 | 10101000 | 00000001 | 00001010
    192 . 168 . 1 . 10

     

     IP 주소는 네트워크 ID와 호스트 ID로 나눠져 있다.

    • 네트워크 ID : 어떤 네트워크인가? 
    • 호스트 ID : 해당 네트워크의 어떤 컴퓨터인가?


    LESSON 19 IP 주소의 클래스 구조

    IP 주소 클래스?

     네트워크 크기에 따라 A~E 클래스로 나눠진다. IP 주소는 비트(32 bit)로 구분하지만 네트워크 ID를 크게 만들거나 호스트 ID를 작게 만들어 네트워크 크기를 조정할 수 있다. 

    • A 클래스 : 대규모 네트워크 주소. 처음 8 bit 네트워크 ID, 나머지 24 bit가 호스트 ID.
    • B 클래스 : 중형 네트워크 주소. 16 bit 네트워크 ID, 16 bit 호스트 ID.
    • C 클래스 : 소규모 네트워크 주소. 24 bit 네트워크 ID, 8 bit 호스트 ID.
    • D 클래스 : 멀티캐스트(multicast) 주소
    • E 클래스 : 연구 및 특수용도 주소 

     

    멀티캐스트 : 한 번의 송신으로 메시지/정보를 목표한 여러 컴퓨터에 동시에 전송하는 것.

     

     네트워크 ID와 호스트 ID의 32 bit 전체 범위는 다음과 같다. 

     

    A 클래스

    네트워크 ID                      호스트 ID
    00000001 | 00000000 00000000 00000000
    01111111 | 11111111 11111111 11111111
    => 1.0.0.0 ~ 127.255.255.255
    • 공인 IP 주소의 범위 : 1.0.0.0 ~ 9.255.255.255 , 11.0.0.0 ~ 126.255.255.255.
    • 사설 IP 주소의 범위 : 10.0.0.0 ~ 10.255.255.255.

     

    B 클래스

    네트워크 ID                      호스트 ID
    10000000 00000000 | 00000000 00000000
    10111111 11111111 | 11111111 11111111
    => 128.0.0.0 ~ 191.255.255.255
    • 공인 IP 주소의 범위 : 128.0.0.0 ~ 172.15.255.255 , 172.32.0.0 ~ 191.255.255.255.
    • 사설 IP 주소의 범위 : 172.16.0.0 ~ 172.31.255.255.

     

    C 클래스

    네트워크 ID                      호스트 ID
    11000000 00000000 00000000 | 00000000
    11011111 11111111 11111111 | 11111111
    => 192.0.0.0 ~ 223.255.255.255
    • 공인 IP 주소의 범위 : 192.0.0.0 ~ 192.167.255.255 , 192.169.0.0 ~ 223.255.255.255.
    • 사설 IP 주소의 범위 : 192.168.0.0 ~ 192.168.255.255.

     

     가정에서는 주로 C 클래스의 사설 IP 주소인 192.168.X.X 가 쓰인다. cmd ipconfig 명령어로 확인 가능.


    LESSON 20 네트워크 주소와 브로드캐스트 주소의 구조

    네트워크 주소와 브로드캐스트 주소?

     네트워크 주소와 브로드캐스트 주소는 특별한 주소로 컴퓨터나 라우터가 자신의 IP로 사용하면 안 되는 주소다. 

    • 네트워크 주소 : 호스트 ID가 10진수로 0인 주소(X.X.X.0). 작은 네트워크를 식별하는 데 사용, 전체 네트워크의 대표 주소. 192.168.1.1 ~ 192.168.1.6은 192.168.1.0의 네트워크에 있다.
    • 브로드캐스트 주소 : 호스트 ID가 10진수로 255인 주소(X.X.X.255). 네트워크에 있는 컴퓨터나 장비 모두에게 한 번에 데이터를 전송하는 데 사용되는 전용 IP 주소. 


    LESSON 21 서브넷의 구조

     네트워크를 분할하는 것을 서브넷팅이라고 한다.

    서브넷?

     많은 컴퓨터가 브로드캐스트 패킷을 전송하면 모든 컴퓨터에 패킷이 전송되어 네트워크가 혼잡해질 수 있다. 대규모 네트워크도 작은 네트워크로 분할하여 브로드캐스트 패킷 범위를 좁힐 수 있다. 이를 서브넷팅이라고 하고, 분할된 네트워크서브넷이라고 한다.

     

    A 클래스 서브넷팅

    네트워크 ID                  호스트 ID
    00000001 ( 00000000 | 00000000 | 00000000 )
    서브넷팅 후
    네트워크 ID         서브넷 ID         호스트 ID
    00000001 ( 00000000 | 00 ) ( 000000 | 00000000 )

     

    서브넷 마스크?

     어디까지가 네트워크 ID고 어디부터가 호스트 ID인지 헷갈릴 텐데, 이럴 때 사용하는 것이 서브넷 마스크이다. IP 주소의 네트워크 부분만 나타나게 하여 같은 네트워크인지를 판별하게 하는 마스크이다.

     

    A 클래스 서브넷 마스크

    네트워크 ID
    ( 11111111 ) 00000000 | 00000000 | 00000000

     

    B 클래스 서브넷 마스크

    네트워크 ID
    ( 11111111 | 11111111 ) 00000000 | 00000000

     

    C 클래스 서브넷 마스크

    네트워크 ID
    ( 11111111 | 11111111 | 11111111 ) 00000000

     

     프리픽스 표기법으로 서브넷 마스크를 슬래시(/비트수)로 나타낼 수도 있다. 255.255.255.0은 /24가 된다. 255.255.255.240은 /28.


    LESSON 22 라우터의 구조

    라우터?

     라우터는 서로 다른 네트워크와 통신하려면 필요한 장치이다. 네트워크를 분리할 수 있다. 스위치(L2)만 있는 네트워크에서는 모든 컴퓨터와 스위치가 동일한 네트워크에 속한다. (스위치와 허브는 네트워크를 분리할 수 없다.) 다른 네트워크로 데이터를 전송하려면 라우터의 IP 주소를 설정해야 한다. 이처럼 네트워크의 출입구를 설치하는 것을 기본 게이트웨이라고 한다.

     처음에는 목적지 주소를 알지 못하니 네트워크의 출입구를 지정하고 라우터로 데이터를 전송한다. 

     

    라우팅?

     라우팅은 경로 정보를 기반으로 현재 네트워크에서 다른 네트워크로 최적 경로를 통해 데이터를 전송한다. 이 경로 정보가 저장되어 있는 곳이 라우팅 테이블.

    • 수동으로 라우팅 테이블에 등록 : 네트워크 관리자가 수동으로. 소규모 네트워크에 적합.
    • 자동으로 라우팅 테이블에 등록 : 대규모 네트워크에 적합. 경로 정보를 서로 교환하여 라우팅 테이블 정보를 자동으로 수정한다. 

     라우터 간에 라우팅 정보를 교환하기 위한 프로토콜을 라우팅 프로토콜이라고 한다. 라우팅 프로토콜을 설정하여 라우터 간에 경로 정보를 서로 교환, 그것을 라우팅 테이블에 등록해 나간다. RIP, OSPF, BGP 등이 있다. 


    📌Chapter Check-up

    • IP가 무엇인가요? Internet Protocol. 인터넷에서 다른 컴퓨터로 데이터를 보낼 때 사용되는 네트워크 계층 프로토콜.
    • 라우터가 무엇인가요? 서로 다른 네트워크를 연결, 다른 네트워크로 패킷을 전송할 수 있게 한다.
    • IP 주소가 무엇인가요? 컴퓨터 네트워크에서 장치들이 서로를 인식하고 통신하기 위해 사용하는 주소.
    • 서브넷이 무엇인가요? 큰 네트워크를 분할해 만든 작은 네트워크.
    • 라우팅이 무엇인가요? 패킷을 목적지로 보낼 때 가장 최적의 경로로 설정해주는 과정.

     

    모두의 네트워크

    초보자와 비전공자를 위한 가장 쉬운 네트워크 입문서. 네트워크의 개념, 비트, 바이트부터 OSI 계층, 무선 랜 구조까지 160개의 일러스트와 유쾌한 캐릭터들의 대화로 설명해 그림책을 읽듯 쉽고

    www.aladin.co.kr

    미즈구치 카즈야(지은이), 이승룡(옮긴이), 『모두의 네트워크』, 길벗(2018), p.12~40, ISBN : 9791160505030.

    해당 게시글은 "모두의 네트워크"를 개인 학습용으로 정리한 내용입니다.

     

    댓글

🍀 Y0ungZ dev blog.
스크롤 버튼