brunch

You can make anything
by writing

C.S.Lewis

by Sunny the New Jul 20. 2023

부록 2 : 간만 보고 넘어가는 네트워크의 기초

[연재] 스토리지 A to Z

사실, SAN 스토리지는 1:1 구성이라 가장 간단하게 구성될 수 있습니다. 아주 간단하게 서버와 스토리지를 1:1로 직접 연결하기만 해도 볼륨을 구성할 수 있지요. 물론, 스위치를 사용하고 이중화를 구성해야 한다면 복잡 해지겠지만, 이 경우에도 사실  직접 스토리지의 깊은 부분까지 컨트롤해야 하는 경우는 거의 없습니다.

NAS의 경우, 네트워크 엔지니어와 스토리지 엔지니어가 별도로 있기는 하지만, NAS의 자유성 때문에 여러분들이 직접 만져보는 일이 흔하기에 네트워크에 대한 아주 간단한 지식정도는 있는 것이 좋습니다.

그래서 복잡한 기업형 네트워크 구조보다는 자주 접하는 개인형 네트워크 구조의 지식에 대해 간단하게 말해보려고 합니다. 지루하기도 하고 어렵기도 하지만, NAS를 이해하는 데 있어서 도움이 되는 부분이기 때문에 한 번씩 읽어 보시는 것을 추천드립니다.


[1] 네트워크 - LAN, WAN

네트워크(Network)는, 기기와 기기들 간에 데이터를 전송하기 위해서 그물망(NET)처럼 구성되어 협업(WORK)한다는 합성어 정도로 이해하고 계시면 기억하시기 쉽습니다. 아래 그림을 보시죠.


[그림 1] 네트워크의 구조


[그림 1]은 간단하게 구성된 네트워크 구조에 대한 다이어그램입니다. 여기서 저희가 얻어야 할 지식은, WAN (Wide Area Network, 광역 통신망) 영역과 LAN (Local Area Network, 근거리 통신망) 영역입니다. 아래 내용을 통해 WAN과 LAN과 기기들에 대한 이해를 해보도록 하죠.


・ “내 PC”의 시점에서 보면, PC_1, PC_2, NAS_1은 LAN 영역입니다.
・ “내 PC”의 시점에서 PC_3, PC_4, PC_5, NAS_2는 WAN 영역입니다.


기기들끼리 통신을 하기 위해서는, 전송 통신 규약에 따라 서로의 IP주소가 명확해야 데이터를 주고받을 수 있습니다. IP가 중복되면 통신에 오류가 발생합니다.

※ 사설 IP (Private IP)는 LAN 내에서 통신할 때만 사용할 수 있는 각 기기의 주소입니다.


・ “공유기_1”은 PC_1, PC_2, 내 PC, NAS_1의 사설 IP를 할당해 주는 역할을 합니다.
・ “공유기_2”는 PC_3, PC_4, PC_5, NAS_2의 사설 IP를 할당해 주는 역할을 합니다.
・ “내 PC”의 사설 IP는 PC_1, PC_2, NAS_1의 사설 IP와 통신할 수 있지만, PC_3, PC_4, PC_5, NAS_2의 사설 IP와 통신할 수 없습니다.


스위칭 허브_1과 스위칭 허브_2라고 명명된 속칭 "허브(Switching HUB)"는 공유기의 LAN 포트를 확장해 주는 역할을 하지만 IP를 할당해 주는 기능은 없습니다. 하지만 확장만 해주는 것은 아니고, 전송 신호를 증폭시켜서 여러 대의 컴퓨터가 동시에 통신할 때 안정적인 전송을 하도록 도와주기도 합니다.

각 공유기들은 WAN에서 들어오는 해킹들을 막기 위해 기본적인 방화벽을 보유하고 있습니다. 성능이 뛰어난 별도의 방화벽 장비를 구성하는 업체도 많습니다. 인터넷 업체에서는 기업용 솔루션으로 유료 방화벽 서비스를 제공하기도 하지요.

만약 모든 방화벽을 꺼버리게 되면, 수백만 개의 해킹 툴이 무작위로 침투하게 되어 아주 간단한 해킹 프로그램에도 공유기를 통해 LAN 영역의 PC들이 감염되는 상황이 발생하기도 합니다. WAN과 LAN의 차이점이 느껴지시나요? 사실, 이 단어들은 우리가 주변에서 굉장히 흔하게 볼 수 있습니다. 어디일까요?
 
 

[그림 2] 공유기의 포트

바로 공유기입니다.
공유기들의 케이블을 연결하는 포트를 보시면 “WAN”이나 “인터넷”이라고 쓰여져 있는 것을 볼 수 있습니다. IPTIME이나 NETGEAR와 같은 시중의 공유기들은 보통 WAN포트를 별도의 색깔로 표시해 놓았죠. 그 옆에는 “LAN”이라고 되어있는 포트들이 여러 개 있습니다. 보통 WAN 포트는 한 개, LAN 포트는 여러 개가 있습니다. (2개~8개 정도)

WAN포트는 인터넷 업체에서 제공한 모뎀이나 인터넷 선을 연결하여 인터넷 업체에서 부여한 공용 IP를 받아올 것이며, LAN포트들은 내부에 있는 PC나 프린터 등을 연결하여 이 공유기가 사설 IP를 기기들에게 할당해 줄 것입니다. 결국, 광역 통신망(WAN)과 근거리 통신망(LAN)을 이 공유기가 중심이 되어 연결해 주는 셈이죠.

이런 일반적인 공유기 중심 네트워크 환경에서는, 공유기는 내부에 있는 기기들이 외부와 연결하기 위해, 그리고 내부의 기기들끼리 통신해 주기 위해 존재하는 핵심 기기입니다.

또한, 가장 기본적인 방화벽도 존재하기 때문에 외부의 비정상적 접속이나, 특정 포트만 개방하여 외부와 연결해 주는 기능도 하고 있습니다.


[2] IP (Internet Protocol) 주소 – 사설, 공용

위의 설명 중에서 또 하나 알아야 할 단어는, “IP주소 (Internet Protocol Address)”입니다. 많이 듣기는 했지만, 이게 대체 뭐 할 때 쓰는 걸까요?

IP (Internet Protocol)은 위에서 말한 “통신 규약”의 가장 핵심입니다. LAN, WAN을 포함하여 기기들끼리 통신을 해야 하는 모든 기계들이 가져야 할 주소가 바로 “IP”입니다. 기기에 IP가 없으면, 연결할 수 없고, 데이터를 주고받을 수 없습니다.

WAN 영역끼리 통신이 가능한 IP는 공인 IP (Public IP)입니다. 공용 IP는 전 세계에서 단 하나의 기기만 연결하며, 보통 국내에서는 통신사가 공용 IP를 나눠서 가지고 있고, 이를 인터넷 서비스를 통해 요금을 받고 각 고객들에게 나누어 줍니다. – 우리가 인터넷을 할 수 있게 된 가장 원초적인 이유입니다.

공인 IP는 각 고객의 인터넷 설치 위치에 있는 모뎀에서 공유기로 연결되며, [그림 1]과 같이 연결된 환경이라면 공유기_1와 공유기_2가 각각의 다른 공용 IP를 가지게 됩니다.

그렇다면, 밑에 연결된 PC들과 NAS는? 기본적으로 WAN에 직접 연결된 상태가 아니기 때문에 사설 IP를 공유기에게서 할당받게 됩니다. 아니면, 직접 임의로 IP를 지정할 수도 있습니다. 이 LAN 영역의 기기들이 WAN 영역에 있는 기기들과 데이터통신이 필요하면 공유기의 WAN IP를 빌려서 통신하게 되죠. 밑의 그림을 보시죠.
 
 

[그림 3] LAN과 WAN IP

위의 그림에서, 내 PC와 NAS_2가 통신하려 할 경우, 둘이 연결되기 위해서 공유기와 인터넷의 힘을 빌려야 합니다. 만약 공유기가 없다면? 인터넷 선을 내 PC와 NAS_2에 각각 직접 꽂아 공용 IP를 바로 할당받을 수도 있지만, 대신 LAN 내에 있는 다른 기기들은 통신할 수 없는 상태가 되고, 우리가 많이 겪었던, “인터넷이 갑자기 안돼요!!!”가 될 겁니다.


IP의 구조

IP는 AAA.BBB.CCC.DDD 와 같이 점으로 구분된 4가지 숫자로 구성됩니다. 

물론 네트워크 및 호스트 주소, 클래스, OSI와 같은 복잡한 것들이 있으나, 이런 부분들은 여타 블로그와 같은 곳에서 네트워크 전문가분들이 저보다 좀 더 자세하고 알기 쉽게 알려 주셨으니 이번에는 간단하게만 알아보겠습니다.

일단, 사설 IP를 설정할 때 가장 중요한 것은 서로 통신이 되는 범위가 있다는 것입니다.

가령, 192.168.0.10이라는 IP를 내 PC가 할당받거나 설정했으면, 내 PC와 통신하기 위해서는 세 번째 숫자까지 같아야 합니다(서브넷에 따라 달라지지만, 일반적인 공유기 기준이라고 가정하면).  즉, 다른 기기들은 192.168.0.100 또는 192.168.0.200처럼  마지막 숫자가 달라야 합니다. 반대로 얘기하면, 192.150.0.200과 같은 IP는 내 PC와 통신할 수 없습니다. 이것이 가장 기본이 되는 IP의 통신 구조입니다.


IP를 구성할 때 자주 보는 것이 서브넷마스크 (SUBNET MASK)와 게이트웨이(GATEWAY), DNS (도메인 네임서버)입니다. LAN에서 통신하기 위해서는 기본적으로 서브넷 마스크와 IP주소가 필요하며, 인터넷에 연결하기 위해서는 게이트웨이와 DNS가 필요합니다. 


서브넷마스크 (Subnetmask)

“여기서 여기까지가 나의 LAN 구역이야!”라고 한정해 주는 값입니다. 이는 네트워크 범위를 한정시켜 목적지를 빨리 찾게 해주는 기능을 하죠. 계산 방법이 있기는 하지만, 소규모 LAN이라면 통상 255.255.255.0 (또는 C클래스)를  사용합니다.


게이트웨이 (Gateway) 

외부의 기기들을 LAN 환경의 기기들과 연결시켜 주어서 정보를 주고받게 하는 기기의 주소입니다. LAN에서 WAN으로 갈 수 있게 해주는 관문 같은 것이죠. 즉, 일반적인 소규모 LAN 환경이라면, “공유기”의 사설 IP가 게이트웨이가 됩니다. (WAN IP가 아닙니다.)


DNS (Domain Name Server)

전 세계에 등록되어 있는 이름(Domain Name)을 IP로 해석해 주는 서버의 IP입니다. 소규모에서는 DNS 서버가 내부에 존재하지 않고, KT나 SK등의 인터넷 업체에서 DNS 서버를 제공합니다. DNS는 인터넷 환경에 접속하기 위해 필요한 IP 주소입니다. KT의 경우 보통 168.126.63.1이라는 DNS 서버를 가지고 있습니다. KT 인터넷을 쓰고 있는 업체라면, DNS 주소에 위와 같은 IP주소를 사용하면 되겠죠.


[3] DHCP와 고정 IP, DDNS

IP까지 알아보았으면, 그다음 많이 다루게 되는 것이 DHCP (유동 IP)와 고정 IP입니다.


DHCP

유동 IP라고도 합니다. Dynamic Host Configuration Protocol의 약자이며, 게이트웨이가 가진 IP 범위 내에서 사용자가 수동으로 입력하지 않아도 같은 LAN끼리 통신할 수 있도록 자동으로 IP를 부여해 주게 하는 기능입니다. 

보통 이 기능은 “부여”와 “회수”의 개념을 가지고 있으며, 사용하지 않은 IP는 회수했다가 새로운 기기에게 다시 할당해 줍니다. IP를 잘못 입력하거나 중복될 일이 없고, 사용자는 게이트웨이에 연결만 하면 바로 쓸 수 있어 편리하기는 하나, IP가 변경되기 때문에 지속적인 서비스를 해야 하는 기기들에게는 문제가 되기도 하죠. 

보통의 OS나 네트워크 기기들은 초기 구성할 때 DHCP로 출시되는 경우가 많습니다. 연결만 하면 별도 설정 없이 접속할 수 있게 되니까요. 단, 어떤 IP인지 알 수가 없기 때문에 NAS 같은 제품들은 보통 파인더라고 하는 IP 찾아주는 프로그램을 별도로 배포하기도 합니다. 

인터넷 업체의 경우 기본적으로 DHCP를 기반으로 공인 IP를 배정해 주기 때문에, 자신의 WAN IP가 시간이 지나면 다른 IP로 변경되는 것을 자주 보실 수 있을 겁니다.



고정 IP

IP가 유동적이지 않고 고정된 IP를 뜻합니다. LAN 환경에서는 보통 사용자가 수동으로 IP를 기기에 입력하거나, 공유기의 설정을 통해 특정 기기의 IP를 특정 값으로 고정되도록 설정하기도 합니다. 인터넷 업체에서도 웹서비스 같은 고정된 IP가 필요할 경우 추가금을 내고 이용할 수 있는 고정 IP 서비스를 합니다.


[4] 도메인

근데, 우리가 인터넷 브라우저에서 또는 특정 페이지를 연결하거나 웹하드 같은 것들을 이용할 때 IP보다 많이 쓰는 것이 있습니다. 네이버 접속할 때 웹브라우저를 열고 “naver.com”이라고 입력하시죠? 이것이 바로 “도메인 (Domain Name)”입니다.

우리가 https://naver.com 이라고 브라우저에 입력하면, 브라우저는 naver.com 이라는 것을 DNS (도메인 네임 서버)로 전달하여 “얘 IP가 뭐니?”라고 물어보고, DNS는 자기의 전 세계 DNS 친구들에게 다시 수소문하여 “얘 IP 이거야.” 라는 답을 받아 다시 브라우저에게 전달합니다. 결국 나의 웹브라우저는 naver.com 이라는 이름을 가진 서버의 IP로 접속을 하게 됩니다.

즉, IP로만 이루어진 기기들은 외우기도 어렵고, 변경되기도 하고, 여러 개의 기기가 동시 서비스를 해야 할 경우에는 각각의 IP를 입력하고 들어가야 하는 불편함이 있었기 때문에, 이를 개선하기 위해 우리가 기억하기 쉬운 영어로 입력하여 컴퓨터가 IP로 변환해 주는 시스템을 만들게 되었는데, 이것이 바로 DNS입니다.

도메인은 공인 IP와 같이 전 세계 차원에서 관리되고 있으며, 각 이름들은 중복될 수 없지만, 한 도메인이 여러 개의 공인 IP를 가지고 있을 수는 있습니다. 예를 들면, 웹서버 및 메일 서버는 서로 다른 기기이지만, 같은 도메인을 사용하지요.


[5] DDNS (Dynamic DNS)

만약, DHCP 환경의 인터넷을 가진 곳에 연결된 NAS를 외부에서 접속하려면 어떻게 해야 할까요?

[4]에서 얘기한 것처럼, 인터넷 서비스는 보통 DHCP 서비스를 통해 일정시간이 지나면 다른 IP로 바뀌어 버리게 됩니다. 문제는, IP가 바뀌어 버리면 외부에서 내 기기(NAS와 같은)에 접속하려면 IP를 알아야 하는데, IP가 바뀌어 버리면 갑자기 접속할 수 없게 되죠. 이런 난감한 상황을 방지하기 위해 업체들이 출시한 서비스가 바로 DDNS 서비스입니다. 

DDNS 업체는 자신들의 DNS 서버와 기기들 간의 지속적인 통신을 통해 현재의 고객 IP를 업데이트하고, 자체 도메인 (예: mydomain.iptime.org)을 고객에게 할당해 준 후 외부에서 해당 주소로 접속하게 되면 자신들이 가지고 있는 IP주소를 리턴해 주어 변경된 IP로 접속할 수 있게 해 줍니다. 

위에서 DDNS 이름인 mydomain.iptime.org 도메인은 IPTIME이 보유한 DNS를 먼저 참조하게 설정되어 있기 때문에, IP가 바뀌어도 업데이트된 IP를 도메인과 바로 연결해 줄 수 있지요.


보통 NAS 회사에서도 서비스를 많이 하지만, IPTIME과 같은 한국 공유기 회사에서 지원해 주는 DDNS를 이용하는 것이 가장 좋습니다.


여기까지 네트워크에 대해서 간단하게 알아보았습니다. 


너무 겉핥기식이라 의미가 잘못 전달될 수도 있기는 하겠지만, 조금이나마 이해가 되시고 재미가 있으시다면 네트워크 자격증 공부를 도전해 보시는 것도 좋을 것 같습니다.

작가의 이전글 부록 : 디스크를 묶는 방법
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari