📍 IP주소에 대해서 설명해주세요. (네트워크에서 IP 주소가 어떤 의미를 갖는지 설명)
IP 주소는 각각의 컴퓨터 기기가 서로 통신하기 위해 가지고 있는 네트워크 주소입니다. 우리가 우편주소로 집의 위치를 찾는 것처럼, 컴퓨터는 IP주소라는 주소체계를 통해 각각의 컴퓨터를 식별합니다.
📍 IPV4와 IPV6는 어떤 차이점이 있을까요? (버전별 차이를 설명)
IP 주소체계는 IPv4와 IPv6로 나눌 수 있습니다.
-IPv4
IPv4는 8비트씩 4블럭으로 이루어져 있는 주소체계로 현재 주로 활용되고 있는 주소체계입니다. 즉, 0~255가 4블럭으로 이루어져있습니다. 이를 표현하면 아래와 같은 형태를 가지고 있습니다.
172.217.25.14
IPv4는 대역에 따라 A,B,C,D,E 클래스로 나뉩니다. 이 클래스들을 구분함으로써 클래스 내에서 Network ID와 Host ID를 구분하게 된다. 각 클래스의 간략한 설명은 다음과 같습니다.
- A Class : 대규모 네트워크 환경에 쓰이며, 첫번째 마디의 숫자가 0~127까지 사용된다. (ex : 12.123.123.123)
- B Class : 중규모 네트워크 환경에 쓰이며, 첫번째 마디의 숫자가 128~191까지 사용된다. (ex : 128.123.123.123)
- C Class : 소규모 네트워크 환경에 쓰이며, 첫번째 마디의 숫자가 192~223까지 사용된다. (ex : 192.168.0.1)
- D Class : 멀티캐스팅용으로 쓰인다. 잘 쓰이지 않는다.
- E Class : 연구/개발용 혹은 미래에 사용하기 위해 남겨놓은 클래스로 일반적인 용도로 사용되지 않는다.
IPv4 는 8비트씩 4블럭이라고 했으니, IP는 총 32비트의 숫자로 이루어졌다고 볼 수 있습니다. 따라서 2^32 개의 주소를 만들 수 있습니다. 전 세계 인구가 약 80억 명인데, IP 주소는 42억 개 정도만 만들 수 있습니다. 우리가 사용 가능한 IPv4 주소는 빠르게 고갈되고 있어 이런 문제를 해결하기 위해 나온 IP 주소체계가 IPv6입니다.
-IPv6
IPv6는 16비트씩 8개의 블럭으로 이루어져 있는 주소체계입니다. 현재 많이 활용되고 있지는 않지만, IP주소 고갈 문제의 해결을 위한 미래를 위한 주소체계입니다. 아래와 같은 형태를 가지고 있습니다.
2001:0db8:0000:0000:8a2e:0370:7334
IPv6 주소는 2^128개의 주소를 만들 수 있습니다.
📍 서브넷과 서브넷 마스크에 대해 설명해주세요. (IP의 네트워크 부분과 호스트 부분과 함께 설명)
-서브넷의 등장 배경
흔히 사용되는 IPv4 주소 체계는 클래스를 나누어 IP를 할당하는데 이 방식은 매우 비효율적이기 때문에 이러한 비효율성을 해결하기 위해 네트워크 장치들의 수에 따라 효율적으로 사용할 수 있는 서브넷이 등장하게 되었습니다.
-서브넷이란
서브넷은 IP 주소에서 네트워크 영역을 부분적으로 나눈 부분 네트워크를 뜻합니다. 이러한 서브넷을 만들 때 사용되는 것이 바로 서브넷 마스크입니다. 즉, 서브넷 마스크는 IP 주소 체계의 Network ID와 Host ID를 분리하는 역할을 합니다.
각 클래스마다 기본 서브넷 마스크는 위 표와 같습니다(D, E클래스는 사용하지 않음). 이러한 기본 서브넷 마스크를 이용하면 IP 주소의 Network ID와 Host ID를 구분할 수 있습니다. IP주소에 서브넷 마스크를 AND 연산하면 Network ID가 됩니다.
📍 라우팅이 뭘까요? (네트워크에서 패킷이 라우터를 통해서 어떻게 이동하는지 설명)
네트워크에서의 라우팅이란, 패킷에 포함된 주소 등의 상세 정보를 이용하여 목적지까지 데이터 또는 메세지를 체계적으로 다른 네트워크에 전달하는 경로 선택 그리고 스위칭 하는 과정을 의미합니다.
쉽게 말해서,
라우팅이란 데이터가 전달되는 과정에서 여러 네트워크들을 통과해야하는 경우가 생길 수 있는데, 여러 네트워크들의 연결을 담당하고 있는 라우터 장비가 데이터의 목적지가 어디인지 확인하여 빠르고 정확한 길을 찾아 전달해주는 것입니다.
📍 Public IP와 Private IP 차이는 뭘까요? (공인 IP, 사설 IP 차이에 대해 설명)
- Public IP
인터넷 사용자의 로컬 네트워크를 식별하기 위해 ISP(인터넷 서비스 공급자)가 제공하는 IP 주소이다. 공용 IP 주소라고도 불리며 외부에 공개되어 있는 IP 주소입니다.
- 공인 IP는 전세계에서 유일한 IP 주소를 갖습니다.
- 공인 IP 주소가 외부에 공개되어 있기에 인터넷에 연결된 다른 PC로부터의 접근이 가능하다. 따라서 공인 IP 주소를 사용하는 경우에는 방화벽 등의 보안 프로그램을 설치할 필요가 있습니다.
- Private IP
일반 가정이나 회사 내 등에 할당된 네트워크의 IP 주소이며, 로컬 IP, 가상 IP라고도 합니다. IPv4의 주소부족으로 인해 서브넷팅된 IP이기 때문에 라우터에 의해 로컬 네트워크상의 PC 나 장치에 할당됩니다.
-공인 IP와 사설 IP의 차이
공인 IP | 사설 IP | |
할당 주체 | ISP(인터넷 서비스 공급자) | 라우터(공유기) |
할당 대상 | 개인 또는 회사의 서버(라우터) | 개인 또는 회사의 기기 |
고유성 | 인터넷 상에서 유일한 주소 | 하나의 네트워크 안에서 유일 |
공개 여부 | 내/외부 접근 가능. | 외부 접근 불가능 |
❗ 사설 IP 주소만으로는 인터넷에 직접 연결할 수 없습니다. 라우터를 통해 1개의 공인 IP 만 할당하고, 라우터에 연결된 개인 PC는 사설 IP를 각각 할당 받아 인터넷에 접속할 수 있게 됩니다.
💻➡🌏 : 사설 IP를 할당받은 스마트폰 혹은 개인 PC가 데이터 패킷을 인터넷으로 전송하면, 라우터(공유기)가 해당 사설 IP를 공인 IP로 바꿔서 전송한다.
🌏➡💻 : 인터넷에서 오는 데이터 패킷의 목적지도 해당하는 사설 IP로 변경한 후 개인 스마트폰 혹은 PC에 전송한다.
📍 라우팅 프로토콜에 대해서 설명해주세요. (IGP(RIP, OSPF), EGP(BGP)에 대해 설명)
라우팅 프로토콜은 패킷이 목적지까지 가는 방법을 결정해주는 프로토콜이다. RIP, OSPF, IGRP, BGP 등이 있으며 라우팅 테이블을 참조해 가장 좋은 길로 패킷을 전송시킨다.
- 내부라우팅(IGP): 같은 AS 내부의 라우팅 정보를 교환하는 프로토콜
- 외부라우팅(EGP): 다른 AS 간의 라우팅 정보를 교환(다른 AS와 연결)하는 프로토콜
🔻 AS(Autonomius System)란?
- AS Number(망식별번호): 각각의 자율시스템을 식별하기 위한 인터넷 상의 고유 번호
- 하나의 그룹/기관/회사 같이 동일한 라우팅 정책으로 하나의 관리자에 의해 운영되는 네트워크
-RIP
RIP(Routing Infomation Protocol)은 최소 Hop Count 를 파악하여 라우팅하는 프로토콜이다. Distance Vector(거리+방향으로 길을 찾아가는) 다이나믹 라우팅 프로토콜 이다. RIP 프로토콜은 '최단 거리' 즉, 라우팅되는 Hop 카운트가 가장 적은 경로를 택하여 라우팅하는 프로토콜로, Routing Table 에 인접 라우터 정보를 저장하여 경로를 결정한다. 최대 Hop Count 는 15로, 거리가 짧기 때문에 내부용(IGP)으로 많이 이용하는 프로토콜이다.
-OSPF
OSPF(Open Shortest Path First)는 최단 경로 우선 프로토콜이다. 최저 COST(최소 시간) 경로를 최적 라우팅 결로로 결정하는 것이다. 가장 대표적인 링크 상태 프로토콜로, SPF(최단거리 우선 알고리즘)을 통해 라우팅 테이블을 생성한다. 주로 내부 게이트웨이 프로토콜(IGP)로 대규모 기업망에서 사용된다. 특히 Area라는 개념을 사용하여 전체 네트워크를 작은 영역으로 나눠 효율적으로 관리하는 방식을 택한다.
-BGP
BGP(Border Gateway Protocol)은 외부 라우팅 프로토콜(EGP)로 AS(관리 도메인)와 AS간 사용되는 라우팅 프로토콜이다. 정해진 정책에 의하여 최적 라우팅 경로를 수립하며, 경로벡터(Distance Vestor) 방식의 라우팅 프로토콜로 다른 IGP보다 컨버전스는 느리지만 대용량의 라우팅 정보를 교환할 수 있는 프로토콜이다.
📍 IP는 어떻게 할당될까요? (정적할당, 동적할당(DHCP)에 대해 설명)
IP가 할당되는 방법에는 정적 할당과 동적 할당이 있습니다.
-정적할당
정적 할당은 IP 주소를 수동으로 설정하는 방법입니다. 정적 할당은 IP 주소를 고정적으로 사용하고 싶을 때 유용합니다.
예를 들어, 웹 서버나 프린터와 같이 항상 같은 IP 주소로 접속해야 하는 장치에는 정적 할당을 사용합니다. 정적 할당을 하려면 장치의 네트워크 설정에서 IP 주소, 서브넷 마스크, 기본 게이트웨이, DNS 서버 등을 직접 입력해야 합니다. 이때 IP 주소는 네트워크에 중복되지 않도록 주의해야 합니다
-동적할당
동적 할당은 IP 주소를 자동으로 설정하는 방법입니다.
동적 할당을 위해서는 DHCP라는 프로토콜을 사용합니다.
DHCP란 Dynamic Host Configuration Protocol의 약자로, 네트워크에 연결된 장치에게 IP 주소와 관련된 정보를 제공하는 서비스입니다.
동적 할당은 IP 주소를 유동적으로 사용하고 싶을 때 유용합니다. 예를 들어, 노트북이나 스마트폰과 같이 다양한 네트워크에 연결할 수 있는 장치에는 동적 할당을 사용합니다.
동적 할당을 하려면 장치의 네트워크 설정에서 IP 주소를 자동으로 가져오기 옵션을 선택하면 됩니다. 이때 IP 주소는 DHCP 서버가 자동으로 배정해줍니다. DHCP 서버는 네트워크에 연결된 장치들에게 IP 주소를 할당하고 관리하는 역할을 합니다. DHCP 서버는 일반적으로 공유기나 라우터에 내장되어 있습니다.
📍 NAT가 뭘까요? (주소 변환이 필요한 예시를 들어 설명)
NAT란 Network Address Traslator 로 직역해보면 네트워크주소 변환자 입니다.
직역한대로 네트워크 주소를 변환해 주는 역할을해주는 장비 입니다.
NAT는 공인IP를 사설IP로 변환해주며, 반대로 사설IP를 공인IP로 변환해주기도 합니다.
NAT는 IPv4의 주소 부족 문제를 해결하기 위한 방법으로서 고려되었으며, 주로 사설 네트워크 주소를 사용하는 망에서 외부의 공인망과의 통신을 위해서 네트워크 주소를 변환하는 것입니다. 즉, 내부 망에서는 사설 IP 주소를 사용하여 통신을 하고, 외부망과의 통신시에는 NAT를 거쳐 공인 IP 주소로 자동 변환합니다.
-사용목적
1) 공인 IP주소 부족 문제 해결
공인 IP를 전체 사용자에게 할당하지 않아도 되어 인터넷의 공인 IP주소를 절약할 수 있습니다.
인터넷의 공인 IP주소는 한정되어 있기 때문에 가급적 이를 공유할 수 있도록 하는 것이 필요한데 NAT를 이용하면 사설 IP주소를 사용하면서 이를 공인 IP주소와 상호변환할 수 있도록 하여, 공인 IP주소를 다수가 함께 사용할 수 있도록 함으로써 이를 절약할 수 있습니다.
2) 보안성
공공망과 연결되는 고유한 사설망을 침입자들로부터 보호할 수 있습니다.
공개된 인터넷과 사설망 사이에 방화벽(Firewall)을 설치하여 외부 공격으로부터 사용자의 통신망을 보호하는 기본적인 수단으로 활용할 수 있습니다. 이때 외부 통신망 즉 인터넷망과 연결하는 장비인 라우터에 NAT를 설정할 경우 라우터는 자신에게 할당된 공인 IP주소만 외부로 알려지게 하고, 내부에서는 사설 IP주소만 사용하도록 하여 필요시에 이를 서로 변환시켜 줍니다. 따라서 외부 침입자가 공격하기 위해서는 사설망의 내부 사설 IP주소를 알아야 하기 때문에 공격이 불가능해지므로 내부 네트워크를 보호할 수 있게 됩니다.
📍 ICMP가 뭘까요?
(IP와 연관지어 설명)
ICMP는 네트워크 계층의 신뢰성 보완하기위해서 IP프로토콜을 보조하는 프로토콜입니다. (ICMP 단독으로 통신하는 것이 아닌 IP프로토콜과 같이 사용)
ex) 수신측 IP가 존재 하지 않을 경우 라우터에서 패킷을 파기하고 이를 ICMP 메시지로 송신측(원래 패킷의 소스 IP주소)에 전송합니다.
📌 어려웠던 점
한 개념에 대해서 설명하기 위해 파생적으로 따라오는 개념이 많아서 공부할 양이 좀 많았다!
꼬리질문에 대비하기 위해 무작정 외우는 것이 아니라 어느정도 이해하고 외워야할 것 같다.