Web Development - 당신이 모르는 인터넷 세상의 '은밀한 거래' 서버, 클라이언트, IP주소, 포트: 이것만 알면 웹이 보입니다!

 

⚠️ 경고: 당신이 모르는 인터넷 세상의 '은밀한 거래'
서버, 클라이언트, IP주소, 포트: 이것만 알면 웹이 보입니다!


서버와 포트 ip주소

프로그램



서버와 클라이언트는
모두 호스트라고 
ip주소를 가지는데

그 ip조소안에 즉 하나의 컴퓨터를 하나의 ip주소를 가진다는
가정아래
그 컴퓨터 안의 돌아가는 프로그램들을 구분하는 이름이 있어야 할거아니야?

그게 포트주소야!

아파트로 따지자면
ip주소=동수
포트주소=호수

이런 셈이지


그러니까
글라이언트
서버
호스트
이 3가지는 모두 ip를 가진 주체(객체)인데
그저 역할과 개념에 따라 이름을 나눈것이지



Web Development 기초

서버, 클라이언트, IP주소, 포트 쉽게 이해하기

웹 개발을 배우려면 제일 먼저 서버, 클라이언트, IP주소, 포트를 알아야 한다.
이 네 가지는 어려워 보이지만, 사실 아주 단순한 구조다.
하나씩 천천히 설명해보자.


1. 서버와 클라이언트는 둘 다 컴퓨터다

많은 사람들이 이렇게 생각한다.
서버는 뭐 거대한 기계이고,
클라이언트는 내 컴퓨터거나 스마트폰이라고.

하지만 사실 둘 다 그냥 **컴퓨터(호스트)**다.
이 컴퓨터들이 서로 역할을 나눈 것뿐이다.

  • 서버: 요청을 받고, 필요한 자료를 보내주는 역할

  • 클라이언트: 서버에게 요청을 보내는 역할

  • 호스트: 네트워크에 연결된 모든 컴퓨터를 부르는 이름

즉, 서버도 클라이언트도 모두 호스트이다.
그저 역할과 상황에 따라 이름이 달라질 뿐이다.


2. 호스트는 모두 IP주소를 가진다

호스트는 인터넷에 연결된 컴퓨터다.
컴퓨터가 서로 연락하려면 주소가 있어야 한다.
그 주소가 바로 IP주소다.

IP주소는 이렇게 생겼다.

192.168.0.10

사람으로 치면 집 주소라고 생각하면 된다.
이 주소로 찾아갈 수 있기 때문이다.


3. 하나의 IP주소에는 여러 프로그램이 돌아간다

여기서 중요한 질문이 생긴다.

하나의 컴퓨터는 하나의 IP주소를 가진다고 하자.
그런데 그 컴퓨터 안에는 프로그램이 여러 개 실행될 수 있다.

예를 들어
웹 서버 프로그램
게임 서버 프로그램
파일 서버 프로그램

그러면 컴퓨터가 어떻게
"어떤 프로그램에게 연락해야 하는지"
구분할 수 있을까?

바로 여기서 **포트(Port)**가 필요하다.


4. 포트는 프로그램을 구분하는 번호다

포트번호는 컴퓨터 안에 실행되는 프로그램을 구분하기 위한 숫자다.
즉, "이 컴퓨터의 어떤 프로그램에게 이야기할까?"를 고르는 번호다.

아파트 비유를 써보자.

  • IP주소 = 아파트 동

  • 포트번호 = 동 안의 호수

즉,
같은 아파트(같은 컴퓨터) 안에서도
다른 호수(다른 프로그램)로 갈 수 있어야 한다.

그래서
IP주소가 집을 찾는 주소라면,
포트번호는 그 집의 특정 방을 찾는 번호다.


5. 정리

  • 서버, 클라이언트, 호스트는 모두 컴퓨터다.

  • 역할이 다를 뿐, 모두 IP주소를 가진다.

  • 하나의 IP주소(컴퓨터) 안에서 여러 프로그램이 돌아갈 수 있다.

  • 그 프로그램들을 구분하는 번호가 포트번호다.

  • IP주소는 아파트 동수

  • 포트번호는 그 아파트의 호수


⚠️ 경고: 당신이 모르는 인터넷 세상의 '은밀한 거래'
서버, 클라이언트, IP주소, 포트: 이것만 알면 웹이 보입니다!

인터넷이라는 거대한 도시에서 정보가 어떻게 오가는지 궁금하지 않으신가요? 이 모든 과정은 마치 피자 배달 주문과 같습니다.
1. 클라이언트 (Client): "주문하는 당신"
클라이언트는 정보를 요구하는 사용자 측 기기(웹 브라우저, 스마트폰 앱 등)입니다.
  • 역할: 피자를 주문하는 사람입니다. "웹사이트 보여줘!" 하고 요청(Request)을 보냅니다. 당신이 지금 이 글을 보기 위해 사용하는 기기가 바로 클라이언트입니다.
2. 서버 (Server): "피자 만드는 가게"
서버는 클라이언트의 요청을 받아 처리하고 정보를 제공하는 컴퓨터입니다.
  • 역할: 주문을 받고 피자를 만들어(데이터 처리) 배달하는 가게입니다. 요청받은 웹 페이지나 데이터를 응답(Response)으로 돌려보냅니다. 서버는 24시간 내내 대기하며 주문을 기다립니다.
3. IP 주소 (IP Address): "가게 주소"
IP 주소는 인터넷에 연결된 각 기기가 가진 고유한 주소입니다.
  • 역할: 피자 가게의 정확한 주소(예: 서울시 강남구 역삼동 123-45)입니다. 클라이언트는 이 주소를 알아야 서버에게 정확하게 요청을 보낼 수 있습니다. "네이버(Naver)" 같은 도메인 이름은 사람이 기억하기 쉬운 별명이고, 실제 통신은 이 IP 주소를 이용해 이루어집니다.
4. 포트 (Port): "가게의 전용 창구"
포트는 서버 컴퓨터 안에서 특정 서비스(웹, 이메일, 파일 전송 등)를 구분하는 출입구 번호입니다.
  • 역할: 피자 가게에 '주문 접수 창구(웹 서비스)', '영업부 창구(이메일 서비스)', '화물 창구(파일 전송)' 등 여러 개의 창구가 있는 것과 같습니다.
    • 웹 서비스는 주로 80번 포트(HTTP)나 443번 포트(HTTPS)를 사용합니다.
    • IP 주소가 건물의 주소라면, 포트는 그 건물 안의 몇 호인지, 어떤 창구를 이용해야 하는지를 알려주는 역할을 합니다.

요약:
당신(클라이언트)이 IP 주소로 피자 가게(서버)를 찾아가서, 포트 번호로 피자 주문 창구를 찾아 "피자 주세요!" 하고 요청하면, 가게가 피자를 만들어 당신에게 배달해 주는 과정이 바로 웹 통신의 핵심입니다.






댓글

가장 많이 본 글