개요
•
netpractice 과제를 진행하는데 필요한 기초 정보들을 배워보자.
•
netpractice 과제는 동일 네트워크간 통신부터 다른 네트워크간 통신까지 다루고 있다.
•
기본적인 네트워크 통신 과정부터 동일 네트워크간 통신을 다루는 LAN 통신에 대해 알아보자.
네트워크 통신 과정 (TCP/IP Protocol Suite)
•
네트워크 통신을 위해서는 “패킷” 이라는 데이터 전송 단위를 만들어서 사용한다.
•
“패킷”을 만들거나 해석할 때에는 “TCP/IP 모델”을 사용한다.
•
“TCP/IP 모델”은, 네트워크 통신 과정을 계층적으로 표현한 모델이며, OSI 7 layer 모델을 간결과한 모델이다.
•
현대의 대부분의 네트워크 통신은 TCP/IP 모델을 기반으로 한다.
•
네트워크 통신에는 항상 “송신자(Sender)”와 “수신자(Receiver)”가 존재한다.
◦
“송신자(Sender)”는 “패킷”을 만들어서 “수신자(Receiver)”에게 전송한다. (Encapsulation)
▪
송신자가 “패킷”을 만들 때는, TCP/IP 최상위 계층부터 순서대로 만든다.
◦
“수신자(Receiver)”는 “송신자(Sender)”로부터 받은 “패킷”을 해석한다. (De-Encapsulation)
▪
수신자가 “패킷”을 해석할 때, TCP/IP 최하위 계층부터 순서대로 해석한다.
프로토콜 (Protocol)
•
서로 다른 장비간, 원활한 네트워크 통신을 위해 만들어놓은 규칙을 말한다.
◦
Ex) 한국인과 일본인 예시
▪
한국인 = 한국어 사용.
▪
일본인 = 일본어 사용.
▪
한국인과 일본인이 원활하게 소통하기 위해서 공용 언어(영어)를 사용하면 됨.
▪
네트워크에서의 공용 언어 = 프로토콜.
▪
HTTP는 웹 통신에 사용되는 프로토콜이다!
[TCP/IP 모델에서 사용하는 프로토콜 종류]
IP (Internet Protocol)
•
TCP/IP 모델의 Internet 계층에서 사용되는 프로토콜이다.
•
네트워크에 존재하는 각 장비들을 식별하기 위한 주소를 나타낸다.
•
모든 장비들은 IP 주소를 통해 출발지(Source)와 목적지(Destination)를 식별하여 패킷을 주고 받는다.
•
IP 주소는 4개의 구역을 각각 8비트로 표현한다.
Subnet Mask
•
특정 IP 주소의 네트워크 ID를 식별하기위해 사용한다.
•
IP 주소처럼 4개의 8비트를 사용하여 표현한다.
•
IP 주소와 Subnet mask를 AND 연산한 값 = 네트워크 ID이다.
•
네트워크 ID는 특정 네트워크를 나타내며, 해당 네트워크의 범위는 네트워크 ID가 변하지 않는 범위이다.
◦
Ex) IP 주소 = 192.168.123.132, Subnet mask = 255.255.255.0
◦
네트워크 ID = 192.168.123.0
◦
네트워크 범위 = 192.168.123.0 ~ 192.168.123.255
◦
이외의 다른 IP 주소 = 다른 네트워크로 판단.
•
Subnet mask는 주로 CIDR 표기법을 사용하여 간단하게 표현한다.
•
CIDR은, Submet mask가 맨 왼쪽부터 얼마만큼 1 비트로 설정되어 있는지 나타내는 값이다.
네트워크 범위에서 첫 번째 IP와 마지막 IP는 특정 용도로 사용되기 때문에, 장비의 IP 주소로 사용할 수 없다.
•
Ex) IP 주소 = 192.168.123.132/24
•
네트워크 ID = 192.168.123.0
•
네트워크 범위 = 192.168.123.0 ~ 192.168.123.255
•
첫 번째 IP = 192.168.123.0 (네트워크 ID)
•
마지막 IP = 192.168.123.255 (브로드캐스트 주소)
•
장비에 할당 가능한 IP = 192.168.123.1 ~ 192.168.123.254
특수 목적으로 예약된 IP 주소는 장비에 할당할 수 없다.
•
Loopback IP = 127.0.0.0/8
•
Multicast IP = 224.0.0.0/4
•
나중에 사용하기 위해 예약된 IP = 240.0.0.0/4
•
등등…
LAN 통신(Local Area Network)
•
LAN이란, 특정한 하나의 네트워크를 말한다.
•
LAN 통신이란, 동일한 네트워크 내에서의 통신을 말한다.
•
LAN 통신을 위해서는 송신자와 수신자의 IP가 동일한 네트워크에 속해야 한다.
•
Ex) netpractice Level 1
◦
Client A와 B는, 두 IP가 동일한 네트워크(104.99.23.0/24)에 속해있으므로 통신 가능.
◦
Client C와 D는, 두 IP가 서로 다른 네트워크(211.191.0.0/16, 211.192.0.0/16)에 속해있으므로 통신 불가.
스위치(Switch)
•
스위치는 여러 개의 장비들을 연결해주기 위해 사용한다.
•
일반 PC는 네트워크 통신에 필요한 LAN 카드가 1개라면, 스위치는 여러 개의 LAN 카드를 가지고 있기 때문에, 여러 개의 장비를 연결할 수 있다.
•
Ex) netpractice Level 3
◦
여러 개의 장비가 스위치에 연결되어 있는 상태.
◦
Client A와 C는, IP가 동일한 네트워크(104.198.28.0/24)에 속해있으므로 통신 가능.
◦
Client B는, IP가 Client A, C와 다른 네트워크(104.198.29.0/24)에 속해있으므로 통신 불가.
마무리
•
이번 글에서는 LAN 통신에 대해 IP 주소만 사용한 통신 과정을 설명했다.
•
이정도만 알아도 netpractice 초반 문제들을 푸는데는 충분하다.
•
그러나, 실제로 LAN 통신에서는 IP 주소 뿐만 아니라, MAC 주소도 같이 사용하여 통신한다.
•
MAC 주소는 TCP/IP 모델 Network Access 계층의 Ethernet 프로토콜에서 사용하는 주소 방식이다.
•
IP 주소와 MAC 주소를 어떻게 활용하여 LAN 통신을 하는지 더 알아보고 싶다면, ARP 프로토콜 동작 방식을 알아보자.
•
다음 글에서는, 서로 다른 네트워크간 통신과정과 라우터 대해 알아보자!