본문 바로가기
Network

네트워크 기초 정리

by 몰라닉네임 2024. 5. 28.

 

PPT 생성형 AI 이미지

네트워크 기초 정리

네트워크란?

여러 개의 장치들이 서로 연결되어 정보를 주고받을 수 있는 통신망으로

  

네트워크는 기계와 기계 사이를 랜선이라는 케이블로 물리적으로 연결된다. 그리고 물리적인 케이블을 통해서 전기 신호를 통해 정보를 주고 받을 수 있다. 

전 세계의 전자기기들은 물리적인 인터넷 선으로 연결되어 있고, 이 선들이 그물망 처럼 촘촘히 짜여져 있다고 해서 네트워크라고 부른다. 

 

IP

집들에 각각 고유한 주소가 있는 것 처럼 인터넷에 연결될 때 IP 주소라는 것을 할당 받는다. 이 IP 주소를 활용해서 컴퓨터나 기계들이 인터넷에서 서로를 찾고 통신할 수 있다

 

IP주소는 8바이트에 3자리 숫자 4개 조합으로 만들어진 주소이다.(0.0.0.0 ~ 255.255.255.255 범위의 고유한 값 )

 

 

IP 주소는 통신사가 관리한다.

일반적으로 가정용 인터넷은 동적 IP를 사용하기 때문에 시간이 지나면서 집에 할당된 IP가 바뀔 수 있다. 보통 통신사의 인터넷에 가입하게 되면 회선당 하나의 IP를 할당받아서 사용하게 된다.  

 

하나의 IP로 여러 기기가 인터넷을 사용하려면 (가령 집에서 스마트폰, 노트북, TV와 같이 다양한 기기로 인터넷을 사용하고 있다. ) 사설 IP를 활용해야 한다.

 

공인 IP 와 사설 IP 

  • 공인 IP는 집 주소처럼 인터넷 상에서 고유하다. 
  • 사설 IP는 집 내부에서 방 번호를 나누는 것처럼 하나의 공인 IP를 나누어서 정의된다. 

공인IP 에서 사설IP로 나눌 때는 네트워크 장비가 필요하다.

 

일반적인 가정에서의 공유기 

 

가정에서는 일반적으로 공유기를 사용한다. 
공인 IP를 받는 인터넷을 꽂아놓는 부분을 WAN 포트라고 한다. 

  • WAN 포트: 외부에서 들어오는 인터넷 신호를 연결한다.
  • LAN 포트: 각각의 기기에 연결해서 사설 IP를 분배하는 곳을 LAN 포트라고 한다. 

그러면 이 공유기에 연결된  장비들은 사설 IP 주소를 할당받아 사용할 수 있다.

 

정리하면 IP는 외부에서 사용하는 공인 IP와 내부에서만 사용하는 사설 IP로 관리할 수 있다. 

이 사설 IP들을 공유기에 연결되어 있는 TV, 컴퓨터, 스마트폰이 하나씩 받아서 사용하게 된다. 사설 IP를 사용하게 되면 공인 IP 하나만으로 여러 기기들로 인터넷을 나눠서 사용할 수 있다. 

 

인프라 환경

  • 공인망: 공인 IP를 사용하는 네트워크 통신으로 외부 네트워크를 사용하는 통신망이다.
  • 사설망: 기업 사설 IP를 사용한 네트워크 통신으로 내부 네트워크 통신망이다.

공인 IP를 각각의 사내 서버로 분배해주는 장비가 라우터이다. 라우터는 공유기와 비슷한 역할을 수행한다. 
맨 아래에 있는 실제 서버에 인터넷 선이 연결되고 사설망의 사설 IP가 할당되는 것이다. 

 

네트워크 인터페이스: 인터넷에 연결하기 위해 컴퓨터에 장착하는 부품. IP주소를 가진다.

 

포트: 어떤 소프트웨어로 데이터를 전달하지 지정하는 것이 포트 넘버이다.

  • 콜론(:) 을 붙여 소프트웨어 번호를 지정한다. 
  • well known Port: 사전에 약속되어 있는 포트가 존재  ex) http (80), https(443), ssh(22) , ftp(21)

네트워크 통신 분류 

  • Outbound는 내부 서버에서 출발하는 신호이다.
  • Inbound 는 클라이언트나 외부 서버에서 출발해서 내부 서버로 들어 오는 통신이다. 

 

NAT 와 포트포워딩

NAT 사용배경
  1. Outbound  요청: 내부 서버 -> 외부서버 (동일한 네트워크 안에서 목적지까지는 문제없이 도착이 가능하다
  2. Outbound  응답: 외부서버 -> 내부서버(공인된 IP를 가진 중간 라우터까지는 올 수 있으나... 안에 있는 내부 서버는 도착하지 못한다
    -> 2번 상황에서 사용하는 것이 NAT이다

NAT란?

  • 공인IP와 사설IP를 매핑해주는 기술. 외부에서 들어온 응답이 내부 서버로 들어올 수 있도록 해준다.
  • Outbound  요청 시, NAT 테이블을 미리 만들고 서버 정보를 미리 기록해둔다. 이때 공인 포트 번호라는 것을 만들어서 매핑한다
  • Outbound 요청/응답에서 사용하는 기술이다.

ex) 

공인 IP 주소 공인포트번호 사설IP주소 사설포트번호
111.111.46.11 10002 192.168.0.3 80

 

포트포워딩 사용 배경 
  1. Inbound 요청: 현재 컴퓨터가 서버 역할을 할때 포트포워딩이 주로 필요하다. NAT에서는 Outbound 요청 후 응답을 근거로 매핑이 가능하지만 Inbound 요청에 따라 전혀 모르는 클라이언트가 내 서버로 요청을 할 경우 매핑을 하는 근거를 찾지 못한다.
  2. 따라서 사용자가 사전에 정의되어있는 포트로 접속되도록 제공한다, 이때 사용하는 것이 포트포워딩이다.
  3. 포트포워딩을 통해 포트포워딩 룰에 맞는 사설 ip트래픽으로 바꿔준다.

 

공인 IP 주소 공인포트번호 사설IP주소 사설포트번호
111.111.46.11 80 192.168.0.3 8080

 

DNS 

DNS는 IP주소를 도메인 주소로 매핑시켜준다. 

사용 배경 
  • 앞서 설명한 내용에서 사용자가 접근하는 IP주소는 숫자로 되어있다.
  • 사용자가 IP주소를 외우고 접속하기에는 접근성이 너무 떨어진다.
  • 따라서 IP주소를 영문으로 된 이름으로 변경하는데 이것이 DNS이다

DNS를 사용함으로서 도메인 주소로 접근할 수 있게 되고 접근성이 높아진 것이다. 

 

  • DNS 서버는 도메인과 IP주소 데이터를 가지고 있는 시스템이다. 이를 이요하여 매핑된 DNS로 접속할 수 이싿. 
  • 내부 DNS 를 사용하여, 내부 서버에 DNS로 접속도 가능하다 

 

참고

  • 개발자를 위한 쉬운 도커 

'Network' 카테고리의 다른 글

Server Farm  (2) 2024.12.24