[네트워크] 단말장치

byeol·2023년 4월 5일
0

네트워크의 3가지 구성요소인 단말장치, 전송채널, 네트워크 장비 중에서 단말장치에 대해서 정리합니다.

단말장치

네트워크의 출발지와 목적지
= 네트워크 양쪽 끝에 위치한 장치
= 네트워크 양 끝 지점에 위치하여 데이터를 주고받는 장치

다양한 네트워크 단말장치
종류에 다라 여러 가지 형태의 데이터(음성, 영상, 제어정보, 신용 결제 정보)를 주고 받는다.
NAS(네트워크 스토리지), IPTV, 인터넷 전화, 신용카드 결제 단말, IP 카메라, 드론

랜카드(NIC)

Network Interface Controller
Network Interface Card

네트워크 출발지와 목적지에 해당하는 단말장치들이 인터넷과 같은 네트워크에 연결되기 위해서는 별도의 인터페이스가 필요하고 랜카드가 바로 그 인터페이스이다.

랜 LAN Local Area Network 소규모의 네트워크를 의미

네트워크 종류마다 NIC이 지원하는 최대 데이터 전송속도가 다르다.
데이터 전송 속도가 빠르다 ≠ 네트워크가 빠르다
네트워크가 빠르다는 데이터를 그저 빨리 전송한다의 개념보다는 대역폭을 늘려서 한 번에 전송할 수 있는 데이터의 양을 늘리는 것!

데이터 전송 속도가 빠르다 = 사람들이 걷는 속도가 빠르다
네트워크가 빠르다 = 사람들이 지나갈 수 있는 길의 폭이 넓다

IP 주소와 MAC 주소

IP(Internet Protocal) 주소 = 집 주소
MAC(Media Access Control) = 집에 살고 있는 실제 거주자

네트워크에서는 IP주소를 참조하여 단말 장치에 데이터를 전송
하지만 실제 보내려는 단말장치가 맞는지는 MAC 주소를 통해서 확인해야 한다.

스마트폰, 노트북과 같은 휴대용 기기들을 위치에 따라 연결되는 네트워크가 달라져서 IP 주소가 고정적이지 않음 따라서 NIC의 고유한 주소인 MAC 주소는 단말장치마다 중복되지 않은 고유한 주소이기 때문에 단말 장치를 구분하기 위한 주소이다.

따라서 어떤 IP 주소가 MAC주소에 할당되어 있는지 정기적으로 업데이트하여 관리

물리적 주소가 MAC 주소이며
IPv4가 IP 주소이다.

MAC 주소 체계

MAC 주소는 12개의 문자, 16진수로 0~9의 숫자와 A~F의 알파벳으로 구성되어져 있다. 2개씩 하이픈 또는 콜론으로 나눠져 있다.

진법 또는 기수법은 주어진 수를 몇 개의 정수로 표현하는 방법을 의미하며
진법으로 표현한 수를 진수라고 한다.

컴퓨터는 2진수를 주로 활용
비트(bit)
= 2진수로 표현되는 데이터의 최소 단위
= 0과 1로 표현할 수 있는 데이터의 수를 나타내는 단위

즉 N bit로 2의 N승개의 데이터를 표현할 수 있다.

+) 원래 컴퓨터는 10진수로 표현되었다. 전압을 10개의 구간으로 나누어서 표현하였지만 전압이 일정하게 들어오지 않았기 때문에
단순하게 전기신호가 있는 1과 없는 0으로 표현하는 2진수를 도입하였다.

컴퓨터가 기억하는 데이터 단위의 표현 방법

8bit = 1Byte

1Byte X 10의 3승 = 1kB
1kB X 10의 3승 = 1MB
1MB X 10의 3승 = 1GB
1GB X 10의 3승 = 1TB

2의 10승 Byte = 1KiB
2의 20승 Byte = 1MiB
2의 30승 Byte = 1GiB
2의 40승 Byte = 1TiB

10의 3승 단위로 나눠진 이유는 우리가 평상시에 사용하는
1000g은 1kg
1000m는 1km
에서 유래했기 때문이다.

원래 표현은 2의 10승인 1024Byte의 표현인 1KiB로 표현되었다.

MAC 주소

  • 2진수는 너무 길어 기억하기 어렵다
  • 0과 1중 하나만 빠져도 전혀 다른 MAC 주소가 만들어진다.

MAC주소도 구간별 의미가 있는데

  • 제조사 식별 코드 : NIC 제조사가 가지는 고유번호
  • 장비코드(시리얼 번호) : NIC 장비를 구분하기 위해 제조사가 할당하는 장비코드로 제품 고유 번호이다.

브로드캐스트의 목적지 MAC 주소 "FF:FF:FF:FF:FF:FF"

네트워킹의 4형제 중에 하나인 브로드캐스트는 송신 장치와 연결된 모든 수신 장치에 데이터를 보낸다. 따라서 주소가 필요없다. 하지만 네트워크를 통해 데이터를 주고 받기 위해서는 반드시 주소가 필요하기 때문에 어쩔 수 없이 브로드캐스트를 위한 고정된 MAC 주소를 할당하게 되었다.

IP 주소 체계

IP (Internet Protocol)

Protocol
= 교통망이 존재하는 교통법규와 같이 네트워크에서도 통신을 위한 일련의 규칙이자 약속

Internet Protocol
= 네트워크의 한 종류인 인터넷 통신을 위한 프로토콜

IP 주소
= IP기반 네트워크 환경에서 단말장치들이 서로 통신하기 위해 지정되는 주소체계

하나의 NIC은 통신하기 위해 반드시 하나의 IP주소를 가진다.

여기서 생각해 볼것은
하나의 유일한 MAC 주소는 연결되는 네트워크에 따라 연결되는 IP 주소가 동적으로 변경된다는 것이다.

IP 주소

MAC 주소는 48bit = 6Byte
IP 주소는 32bit = 4Byte

단말장치는 늘어나는데 비해서 IP주소가 부족해보인다
따라서 이 부족현상을 해결하는 두가지 방법이 있는데
하나는 IPv6의 주소를 도입하는 것이고
나머지 하나는 IP주소를 사설망과 공인망으로 나눠서 사용하는 것이다.

IPv6는 128bit로 16Byte의 주소체계를 갖는다. 하지만 도입하는데 오래 걸릿 것으로 예상된다.

사설망과 공인망 통신-NAT

앞서 말했듯이 IP 부족현상을 해결하기 위한 한가지 방법은 IP주소를 사설망과 공인망으로 나누어서 사용하는 것이다.

  • 사설망 = 내부망
    특정 조직이나 기관 내에서만 독립적으로 사용
    "사설 IP"는 외부망에서 사용하지 않으며 내부 통신을 목적으로 한다, 다른 사설망에서 중복해서 사용할 수 있다.
  • 외부망 = 공인망 = 공중망
    사용자가 세계 어디에 있더라도 접속할 수 있는 네트워크 즉 인터넷
    "공인 IP"는 공인망에서 쓰이는 IP주소이다.

사설망에서도 인터넷을 사용할 수 있다.
어떻게 가능한 것일까?
바로 사설망과 공인망 사이에서 망을 중계하는 네트워크 장비를 하나 두는 것!

바로 게이트웨이라는 네트워크 장비로 가능하게 된다.
게이트웨이는 사설망에서 공인망으로 데이터를 보낼 때 사설IP주소를 공인IP주소로 변경하여 보낸다. 이러한 기능을 네트워크 주소 변환(NAT, Network Address Translation)이라고 한다.

자세히 그 과정을 알아보자

사설망과 공인망 사이의 망 중계 구조는 위와 같다.


사설망에 있는 컴퓨터 A가 공인망에 있는 컴퓨터 C로 데이터를 보낼 때의 절차를 살펴보면

    1. 컴퓨터 A는 자신의 사설IP 주소를 출발지로 컴퓨터 C의 공인IP를 도착지로 하여 네트워크 장비에 전송
    1. 네트워크 장비는 출발지의 사설 IP 주소를 네트워크 장비의 공인IP 주소로 변경하여 데이터를 보내고 변경 내용은 네트워크 장비의 NAT table에 보관한다. 여기서 발생하는 사설IP가 공인IP로 주소가 전환되는 것을 Source NAT이라고 한다.
    1. 데이터를 받느 컴퓨터 C는 출발지의 주소가 네트워크 장비의 공인IP이기 때문에 사설망에 있는 컴퓨터 A의 존재를 알지 못하고 네트워크 장비가 데이터를 보냈다고 생각한다.

반대의 과정을 살펴보자

    1. 컴퓨터 C는 자신의 공인 IP주소를 출발지로 하여 목적지 주소인 네트워크 장비의 공인 IP 주소로 데이터를 전송한다.
    1. 데이터를 받은 네트워크 장비는 NAT table을 이용하여 데이터의 목적지 주소를 컴퓨터 A의 사설IP 주소로 변경한 후 내부 사설망으로 보낸다.
      이와 네트워크 장비의 공인 IP주소가 내부망의 사설IP 주소로 변환되는 것은 Destination NAT이라고 한다.

NAT의 부가적인 기능

  • 사설망에 속하는 여러 대의 컴퓨터가 하나의 공인 IP 주소를 공유하여 공인 IP 절약
  • Source NAT을 통해서 사설망의 IP주소를 네트워크 장비의 공인 IP주소로 변환하기 때문에 외부에서는 사설 IP주소를 알지 못해 보안에 강하다.

서브넷마스크

IP주소를 사설 IP와 공인 IP로 구분하는 효율적인 방법

서로 같은 네트워크에 있는지 아니면 서로 다른 네트워크에 있는지 어떻게 구분지을 수 있는가?

전체 IP 주소 범위를 일정 단위 그룹으로 나누고 해당 단위 그룹이 동일한 IP 주소를 가지는 단말장치들은 같은 네트워크에 속한다고 보는 것이다!

서브넷마스크는 IP 주소가 단위그룹으로 나뉘도록 필터링해주는 수단이다.

서브넷마스크의 필터 AND 연산

AND 연산의 특징
둘다 1이어야 1이고 하나라도 0이면 0이 나온다.

AB결과
000
010
100
111

보면 본인이 1인 경우 결과값은 본인과 상관 없이 상대의 값이 그대로 결과로 나온다.

A가 1인 경우를 보면 A의 값과 상관없이 B의 값이 결과로 그대로 나온다.

예를 들어
IP 주소 : '121.188.177.233'
일 때, 24bit 영역만 필터링해보자.

그러면 필터링하기 위한 서브넷마스크는
'11111111.11111111.11111111.00000000'이다.

결국 AND 연산의 결과는 1인 본인과 상관 없이 상태의 값이 그대로 출력되므로 필터링된 주소는 '121.188.177.0'이 된다.

네트워크 범위를 결정하는 IP 주소 클래스

IPv4의 경우 32bit로 2의 32승개의 IP주소를 표현할 수 있다.
이를 보다 계획적으로 사용하기 위해 IP를 일정 단위로 분류한 것이 IP 클래스이다.

전체 클래스는 A,B,C,D,E로 5개의 클래스로 구분되며
IP 주소는 네트워크에 할당되는 네트워크 ID와 단말장치에 할당되는 호스트 ID로 나눠진다.

따라서 IP주소의 네트워크 ID는 같은 네트워크를 사용하는 단말장치들은 같은 값을 가지나 호스트 ID는 단말장치마다 다르다.
따라서 단말장치마다 할당된 IP주소는 달라지게 된다.

정리하면
같은 네크워크에 속하냐 속하지 않냐는 서브넷마스크에 의해서 결정된다
이는 서브넷마스크가 앞서 말한 5개의 클래스를 구분지어주는 역할을 한다는 것이다. 즉 5개의 클래스는 자신의 클래스에 맞는 서브넷마스크를 가지고 있는 이를 디폴트 서브넷마스크라고 한다.

디폴트 서브넷마스크는 AND 연산에 의해 필터링
네트워크 ID 영역은 1로 => 1로 표현된 비트 수를 "서브넷마스크 비트 수"
호스트 영역은 0으로 => 0으로 표현된 비트 수를 "호스트 비트 수"

클래스고정된값인 최상위비트서브넷마스크네트워크개수네트워크당 IP수
A0255.0.0.01282의24승-2
B10255.255.0.016,3842의 16승-2
C110255.255.255.02,097,1522의 8승-2
D1110멀티캐스트 IP주소로 활용
E1111연구 및 특수 목적으로 활용
profile
꾸준하게 Ready, Set, Go!

0개의 댓글

관련 채용 정보