IP란 쉽게 이해하면, 네트워크 상에서의 특정 컴퓨터를 가리키는 주소를 의미합니다.
IP(Internet Protocol) 주소는 인터넷이나 네트워크에 연결된 특정 장치를 고유하게 식별하기 위한 주소입니다. 이를 통해 네트워크 상에서 데이터를 주고받을 때, 데이터를 정확한 대상에게 전달할 수 있습니다.
43.203.233.27
위의 숫자는 하나의 컴퓨터(또는 서버)의 IP 주소입니다.
예를 들어, naver.com이라는 웹사이트에 접속할 때, 브라우저는 내부적으로 네이버 서버의 IP 주소를 찾습니다. 즉, 네이버 서버가 사용하는 특정 컴퓨터의 주소를 알아야 네트워크 통신이 가능합니다.
일반적으로 사용하는 naver.com 같은 도메인 주소는 사용의 편의성을 위해 사람이 기억하기 쉽게 만든 것입니다. 실제로는 해당 도메인에 연결된 서버의 IP 주소가 사용됩니다. 이를 위해 DNS(Domain Name System)라는 시스템이 도메인 이름을 IP 주소로 변환해줍니다.
Port란 쉽게 이해하면, 한 컴퓨터 내에서 실행되고 있는 특정 프로그램의 주소입니다.
IP 주소만으로는 한 컴퓨터에 있는 다양한 프로그램 중 어떤 프로그램과 통신할지를 알 수 없습니다. 여기서 포트 번호가 필요합니다. 포트는 한 컴퓨터 내의 특정 프로그램(또는 프로세스)을 구분하는 역할을 합니다.
예를 들어, 다음 주소에서 :3000은 포트 번호입니다.
43.203.233.27:3000
위의 주소는 43.203.233.27라는 컴퓨터에 있는 3000번 포트를 사용하는 프로그램과 통신하겠다는 의미입니다.
컴퓨터에서는 다양한 프로그램들이 동시에 실행됩니다. 예를 들어, 크롬, 슬랙, 카카오톡, Intellij 등 여러 프로그램이 동시에 작동하듯, 서버도 여러 프로그램이 동시에 실행됩니다.
서버 입장에서 "어떤 프로그램에 요청을 전달해야 하는지"를 구분하기 위해 포트 번호를 사용합니다.
웹 브라우저(크롬, 엣지 등)는 기본적으로 80번 포트(HTTP)나 443번 포트(HTTPS)로 통신하도록 설정되어 있습니다.
즉, 포트 번호를 생략하면 브라우저가 기본값을 사용합니다.
위처럼 포트 번호를 입력하지 않아도 브라우저는 내부적으로 https://naver.com:443으로 인식합니다. 만약 다른 포트를 사용하고 싶다면 포트 번호를 추가해야 합니다.
다음처럼 포트 번호를 명시하면, 브라우저는 해당 포트로 통신을 시도합니다.
이 경우, 3000번 포트에서 실행 중인 서버와 통신하게 됩니다.
Well-Known Port는 주요 프로토콜과 연동되도록 정해진 포트 번호입니다. 쉽게 이해하면, 특정 역할을 미리 약속해둔 포트 번호를 의미합니다.
포트 번호는 0 ~ 65,535번까지 사용할 수 있습니다.
이 중에서 0 ~ 1023번까지의 포트 번호는 특정 프로토콜을 위해 예약되어 있습니다.
이를 잘 알려진 포트(Well-Known Port)라고 부릅니다.
프로토콜은 쉽게 이해하면, 컴퓨터나 기기들이 서로 통신을 위해 약속한 규칙이나 방법을 의미합니다.
Well-Known Port (잘 알려진 포트)는 규칙일 뿐, 반드시 지켜야 하는 것은 아닙니다.
예를 들어, HTTP 서버를 80번 포트가 아닌 3000번이나 8080번 포트에서 실행해도 됩니다.
다만, 특정 포트를 사용할 때 해당 포트를 이미 사용하는 프로그램이 없는지 확인이 필요합니다.