본문 바로가기

CS/NETWORK

[네트워크 스터디 4주차] 네트워크 레이어 / IP 프로토콜

목차

    📌 네트워크 레이어, IP 프로토콜

    Q) IP주소에 대해서 설명해주세요.

    IP (일반적으로 IPv4)

    • 컴퓨터(노드)를 식별하기 위해 부여된 위치 주소. 
    • 네트워크 주소 + 호스트 주소로 구성되어 있음
    • 지정한 IP주소에 패킷이라는 통신 단위로 데이터 전달
    • 32비트 2진수로 표현 가능. 최대 2^32개 까지 가능.ex)         192.          168.              0.         103-> 11000000.10101000.00000000.01100111

     

     

    Q) IPv4와 IPv6는 어떤 차이점이 있을까요?

     

     

    구분 IPv4 IPv6
    형태 127.0.0.1 2001:230:abcd:ffff:0000:0000:ffff:1111
    표현 0~255 숫자 16진수
    주소 길이 32비트 128비트
    주소 개수 약 43억개(2^32) 거의 무한대(2^128)
    품질 제어 품질 보장 곤란(QoS 일부 지원) 등급별, 서비스별로 패킷을 구분할 수 있어 품질 보장 용이
    보안 기능 IPsec 프로토콜 별도 설치 확장 기능에서 기본으로 제공
    자동 네트워킹 곤란 있음(Auto configuration)
    이동성 지원 곤란(비효율) 용이(효율적)

    IPV6는 IPv4 Address 고갈을 대비하여 만들어짐

     

     

    Q) 서브넷과 서브넷 마스크에 대해 설명해주세요.

    서브넷 등장 배경

    • 클래스를 나누어 IP를 할당하여 발생하는 IPv4 주소 체계의 비효율성을 해결하기 위해, 네트워크 장치 수에 따라 효율적으로 사용할 수 있는 서브넷 등장

     

    서브넷

    • IP주소에서 네트워크 영역을 부분적으로 나눈 부분 네트워크
    • 서브넷을 만들 때, 사용되는 것이 서브넷 마스크

     

    기본 서브넷 마스크

    class 이진표현 십진표현 기본 서브넷 마스크
    A 0xxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx 0.0.0.0 ~ 127.255.255.255 255.0.0.0
    B 10xxxxxx xxxxxxxx xxxxxxxx xxxxxxxx 128.0.0.0 ~ 191.255.255.255 255.255.0.0
    C 110xxxxx xxxxxxxx xxxxxxxx xxxxxxxx 192.0.0.0 ~ 223.255.255.255 255.255.255.0

     

     

    • 위와 같이 서브넷 마스크를 이용하면 IP주소의 Network ID, Host ID를 구분 가능.
    • 24는 서브넷 마스크의 비트 수를 의미함.
    • 서브넷 마스크가 위처럼 필요한 이유는 서브네팅을 하여 효율적인 네트워크 사용을 위해

     

     

    서브네팅 

    • IP 주소 낭비를 방지하기 위해 원본 네트워크를 여러 개의 서브넷으로 분리하는 과정
    • 서브넷 마스크의 bit 수를 증가시키는 것
    • 서브넷 마스크의 bit 수를 1씩 증가(ex. 24 → 25)시키면, 할당할 수 있는 네트워크가 2배수로 증가, 호스트 수는 2배수로 감소


    Q) 라우팅이 뭘까요?

     

    라우팅

    • 패킷을 전송하기 위한 수많은 경로 중, 한 가지 경로를 결정하는 기술

     

    정적 라우팅

    • 사람이 수동으로 미리 경로를 지정

     

    동적 라우팅 

    • 변화하는 상황에 맞추어 라우터가 경로를 재설정

     

    라우팅 테이블

    • 네트워크 상의 모든 라우터들은 목적지에 따라 패킷을 보낼 Interface를 선 계산해야 하는데,
      이를 미리 계산해 놓은 테이블

     

     

    Q) Public IP와 Private IP 차이는 뭘까요?

    Public IP(공인 IP) 

    • ISP가 할당
    • 공용 IP, 공인 IP로도 불림
    • 전세계에서 유일한 IP 주소를 가짐
    • 외부에 공개되어 있어 인터넷에 연결된 다른 PC로부터의 접근이 가능 -> 방화벽 등 보안 프로그램 설치 필요

     

    Private IP(사설 IP) 

    • 라우터가 할당
    • 로컬 IP, 가상 IP, 사설 IP로도 불림
    • 일반 가정이나 회사 등 내부적으로 할당된 네트워크 IP 주소
    • IPv4의 주소 부족으로 인해 서브넷팅된 IP -> 라우터에 의해 로컬 네트워크 상의 PC나 장치에 할당

     

    class 주소 대역
    A 10.0.0.0 ~ 10.255.255.255
    B 172.16.0.0 ~ 172.31.255.255
    C 192.168.0.0 ~ 192.168.255.255

     

      공인 IP 사설 IP
    할당 주체 ISP(인터넷 서비스 공급자) 라우터(공유기)
    할당 대상 개인 또는 회사의 서버(라우터) 개인 또는 회사의 기기
    고유성 인터넷 상에서 유일한 주소 하나의 네트워크 안에서 유일
    공개 여부 내/외부 접근 가능 외부 접근 불가능

     

    Q) 라우팅 프로토콜에 대해서 설명해주세요.

    라우팅 프로토콜 

    • 라우팅 테이블을 생성/유지/업데이트/전달하는 프로토콜

     

    라우팅 프로토콜 구성

     

    1) 라우팅 테이블

    • 패킷을 목적지로 라우팅 할 때 참조하는 테이블
    • 목적지 주소, Output I/F, Metric값

     

    2) 메시지

    • 라우터 간 라우팅을 위해 교환하는 메시지
    • 이웃 도달 메시지, 라우팅 정보

     

    3) 메트릭

    • 라우팅 테이블 생성 및 업데이트 시 최적의 경로를 결정하는 기술
    • 경로 길이, 홉 수, 대역폭, 비용, 신뢰성

     

    라우팅 프로토콜 분류

     

    1) 라우팅 경로 고정 여부

     

    * 자율 시스템(Autonomous System)

    • 일정 규모의 한 네트워크
    • 관리자의 관리 하에 있는 라우터 집합

     

    정적 라우팅(Static Routing)

    • 수동식, 사람이 일일이 경로 입력
    • 라우터 부하를 줄인다 but 관리자의 관리부담 증가
    • 고속 라우팅 가능
    • 정해진 경로 문제 발생시 라우팅 불가

     

    동적 라우팅 (Dynamic Routing)

    • 라우터가 스스로 라우팅 경로를 동적으로 결정
    • RIP, IGRP, EIGRP, OSPF, BGP

     

    2) 내/외부 라우팅

     

     

    내부 라우팅(Interior Gateway Protocol)

    • AS 내에서의 라우팅을 담당하는 라우팅 프로토콜
    • RIP, IGRP, OSPF, EIGRP

     

     

    외부 라우팅(Exterior Gateway Protocol)

    • 서로 다른 AS 사이에서 사용 되는 라우팅 프로토콜
    • BGP, EGP

     

    3) 라우팅 테이블 관리 알고리즘

     

    Distance Vector 알고리즘

    • 목적지까지 가는 데 필요한 거리, 방향만을 인접 라우팅 테이블에 기록(인접라우터)
    • RIP, IGRP

     

    Link State Vector 알고리즘

    • 목적지까지 가는 경로를 SPF(Shortest Path First) 알고리즘을 통해 모든 라우팅 테이블에 기록(모든 라우터)
    • OSPF

     

     

    주요 라우팅 프로토콜(RIP, OSPF, BGP)

    구분 RIP OSPF BGP
    알고리즘 거리값 기반 최소링크비용 거리값 기반
    계산단위 HOP단위 경로 Area(연속된 망 집합) AS(관리도메인)
    정보기록 라우팅 테이블 LSA 프리픽스목록
    특징 HOP 제한 다익스트라 알고리즘 TCP 활용(서브넷 집합)
    정보수집 30초 주기 필요시 변경 정보 수집 필요시 변경 정보 수집
    적용규모 소규모 대규모망(도메인내) 대규모망(도메인간)

     

    Q) IP는 어떻게 할당될까요?

    1. 라우터를 통해 1개의 Public IP 할당
    2. 라우터에 연결된 개인 PC는 Private IP를 각각 할당 받아 인터넷에 접속
    3. Private IP를 할당받은 개인 PC가 데이터 패킷을 인터넷으로 전송하면, 라우터(공유기)가 해당 Private IP를 Public IP로 바꿔 전송
    4. 인터넷에서 오는 데이터 패킷의 목적지도 라우터가 Public IP를 해당 PC의 Private IP로 변경 후 전송

     

    Q) NAT가 뭘까요?

    NAT(Network Address Translation)

    • Local network 내에서는 IP주소 중복을 고려하지 않아도 된다는 점(Private IP)을 이용해 IPv4의 주소 부족 한계를 극복하기 위해 기술
    • 하나의 IP 주소로 여러개의 host를 매핑
    • 즉, Local network 내의 host를 특정할 수 있는 포트 번호를 사용하는 NAT 라우터를 활용하여 더 많은 host를 관리할 수 있다.

     

    동작 순서

    1. Local network 내의 host가 서버에게 패킷을 보낸다.
    2. NAT 라우터는 source 주소를 자신의 주소로 바꾸고, 해당 host를 식별할 수 있는 포트 번호를 새로 부여한다.
    3. 서버는 해당 패킷을 받고, 대답하기 위해 dest 주소를 NAT 라우터의 주소로 설정한다.
    4. 서버가 보낸 패킷을 받은 NAT 라우터는 NAT translation table의 포트 번호를 보고 호스트를 특정해 보내준다.

     

     

    Q) ICMP가 뭘까요?

    IMCP(Internet Control Message Protocol)

    • 네트워크 레벨에서 문제가 생겼을 경우, 이를 보고하는데 사용되는 프로토콜
    • 전달하는 과정에서 IP 프로토콜을 활용하는데, 주로 IP datagram에 캡슐화되어 함께 전송된다.
    • 대표적으로 Ping, Tracert 명령어에 사용됨

     


    📌 참고자료

    https://xn--3e0bx5euxnjje69i70af08bea817g.xn--3e0b707e/index.jsp

    https://velog.io/@oyeon/%EB%9D%BC%EC%9A%B0%ED%8C%85-%ED%94%84%EB%A1%9C%ED%86%A0%EC%BD%9C