본문 바로가기
네트워크

포트번호 란?

by myebook 2023. 11. 9.

오늘은 포트번호에 대해서 알아보겠습니다. 보통은 IP주소 뒤에 따라오곤 하는데요. 자세히 알아보도록 하겠습니다.

 


포트번호 란?
포트번호 란?

 

 

포트번호 기본사항

포트 번호는 네트워크 통신에서 사용되는 숫자로, 컴퓨터나 네트워크 장치 간의 데이터 통신을 식별하는 데 사용됩니다. 포트 번호는 0부터 65535까지의 범위를 가지며, 각 번호는 특정 서비스나 프로토콜과 연관되어 있습니다. 여기에 포트 번호에 대한 몇 가지 기본 사항이 있습니다.

1. 포트 범위:
   - 0부터 1023까지의 포트는 잘 알려진 포트로, 표준 서비스와 프로토콜에 할당됩니다. 예를 들어, 80번 포트는 HTTP 웹 서비스에 할당되어 있습니다.
   - 1024부터 49151까지의 포트는 등록된 포트로, 사용자 정의 서비스 및 애플리케이션에 할당됩니다.
   - 49152부터 65535까지의 포트는 동적 또는 개인 포트로, 클라이언트 프로그램이 임시로 사용하는 데 주로 사용됩니다.

2. 포트 번호의 종류:
   - TCP 포트: 

  TCP(Transmission Control Protocol)를 사용하는 서비스와 프로토콜을 위한 포트 번호입니다. 예를 들어, 22번 포트는 SSH 접속에 사용됩니다.
   - UDP 포트: 

  UDP(User Datagram Protocol)를 사용하는 서비스와 프로토콜을 위한 포트 번호입니다. UDP는 데이터 그램을 전달하는 데 사용되며, 53번 포트는 DNS(Domain Name System)에 사용됩니다.

3. 포트 포워딩:
   - 라우터에서 포트 포워딩을 설정하면 외부에서 내부 네트워크에 있는 특정 포트로 연결할 수 있습니다. 이것은 원격 액세스 또는 게임 서버 호스팅과 같은 시나리오에서 유용합니다.

4. 보안과 포트:
   - 개인 또는 민감한 데이터를 보호하기 위해 포트 번호를 필터링하거나 방화벽을 설정하는 것이 중요합니다. 특정 포트에 대한 액세스를 허용 또는 거부할 수 있습니다.

포트 번호는 네트워크 통신의 기본 요소 중 하나이며, 서버와 클라이언트 간의 효율적인 데이터 교환을 가능하게 합니다. 각 포트는 특정 프로토콜 및 서비스에 매핑되므로 올바른 포트 번호 사용이 중요합니다.

 

 

 

포트번호의 역할

포트 번호는 컴퓨터 네트워크에서 데이터 통신을 관리하고 목적을 식별하는 데 사용되는 중요한 역할을 합니다. 포트 번호의 주요 역할에 대해 자세히 알려드리겠습니다.

1. 서비스 식별:
   - 포트 번호는 네트워크에서 실행되는 서비스 또는 애플리케이션을 식별하는 데 사용됩니다. 예를 들어, 80번 포트는 월드 와이드 웹(HTTP) 서버를 식별하고, 25번 포트는 전자 메일 서버(SMTP)를 나타냅니다.

2. 다중 서비스 지원:
   - 하나의 컴퓨터 또는 서버는 여러 서비스를 제공할 수 있습니다. 포트 번호를 사용하면 하나의 물리적 장치에서 여러 서비스를 동시에 운영할 수 있습니다. 각 서비스는 고유한 포트 번호를 통해 식별됩니다.

3. 통신 경로 설정:
   - 데이터 통신이 발생할 때, 클라이언트와 서버 간에 어떤 포트를 사용할 것인지 미리 알려야 합니다. 클라이언트가 서버에 연결하려면 목표 포트 번호를 지정해야 합니다.

4. 보안 및 방화벽:
   - 포트 번호는 보안 및 방화벽 구성에 중요한 역할을 합니다. 방화벽은 특정 포트를 통해 들어오는 연결을 제한하거나 차단함으로써 보안을 유지합니다.

5. 프로토콜 및 전송 계층:
   - 포트 번호는 전송 계층에서 작동하며, 주로 TCP(Transmission Control Protocol)와 UDP(User Datagram Protocol) 프로토콜에서 사용됩니다. TCP는 신뢰성 있는 연결을 제공하고, UDP는 신뢰성 없는 데이터 전달을 담당합니다.

6. 동적 포트 할당:
   - 일부 포트 번호는 동적으로 할당되며, 클라이언트 프로그램이 임시로 사용합니다. 이렇게 사용된 포트는 연결 종료 후 반환됩니다.

7. 포트 포워딩:
   - 라우터에서 포트 포워딩을 설정하면 외부에서 내부 네트워크의 특정 포트로 연결할 수 있습니다. 이는 원격 액세스나 게임 서버 호스팅과 같은 시나리오에서 유용합니다.

포트 번호는 네트워크 통신의 핵심 요소로, 서버와 클라이언트 간의 효율적인 데이터 교환을 가능하게 합니다. 각 포트 번호는 특정 프로토콜과 서비스와 연결되며, 올바른 포트 번호 사용은 네트워크 성능과 보안을 유지하는 데 중요합니다.

 

 

패킷 내에서의 포트번호 위치

컴퓨터 네트워크에서 포트 번호는 전송 계층에서 사용되며, 패킷 헤더의 일부로 식별됩니다. 포트 번호는 TCP 및 UDP 프로토콜에서 사용되며, 이것이 어떻게 패킷 내에서 식별되는지 자세히 설명합니다.

패킷의 구조는 다음과 같습니다:

1. 데이터 부분 (Payload):

  실제 데이터가 여기에 포함됩니다. 이는 전송되는 정보, 메시지 또는 파일에 해당합니다.

2. 패킷 헤더 (Packet Header):

  패킷의 메타데이터를 포함하며, 포트 번호 또한 여기에 포함됩니다.

다음은 패킷 헤더에서 포트 번호의 위치를 설명하는 간단한 그림입니다.

+-------------------------+
|    출발지 포트 번호     |
+-------------------------+
|    목적지 포트 번호     |
+-------------------------+
|    일련번호 (TCP)       |
+-------------------------+
|    확인응답 번호 (TCP)   |
+-------------------------+
|    헤더 길이 및 플래그   |
+-------------------------+
|    윈도우 크기 (TCP)     |
+-------------------------+
|    체크섬                |
+-------------------------+
|    길이                  |
+-------------------------+
|    옵션 (필요시)         |
+-------------------------+
|    데이터                 |
+-------------------------+


- 출발지 포트 번호:

  데이터를 보내는 컴퓨터(클라이언트)의 포트 번호입니다.
- 목적지 포트 번호:

  데이터를 받는 컴퓨터(서버)의 포트 번호입니다.
- 일련번호 및 확인응답 번호 (TCP):

  이 부분은 TCP 프로토콜에서 사용되며 연결 및 데이터 전달을 관리합니다.
- 헤더 길이 및 플래그:

  패킷 헤더의 길이와 플래그 비트로 다양한 제어 정보를 포함합니다.
- 윈도우 크기 (TCP):

  데이터의 흐름 제어를 위해 사용됩니다.
- 체크섬:

  데이터 무결성을 확인하기 위한 체크섬 값입니다.

출발지 포트 번호와 목적지 포트 번호는 패킷의 헤더 부분에 있으며, 이 두 번호는 패킷을 수신 및 송신하는 컴퓨터 및 해당 서비스 또는 애플리케이션을 식별합니다. 이것이 통신을 수행하는 데 어떻게 사용되는지 이해함으로써, 패킷 내에서 포트 번호의 위치를 이해할 수 있습니다.

 

 

주요 포트번호


| 포트 번호 | 서비스/프로토콜       | 설명                                    |
|----------|-----------------------|-----------------------------------------|
| 80       | HTTP                  | 웹 브라우징을 위한 HTTP 서비스           |
| 443      | HTTPS                 | 보안된 웹 통신을 위한 HTTPS 서비스       |
| 25       | SMTP                  | 이메일 전송을 위한 SMTP 프로토콜         |
| 22       | SSH                   | 원격 로그인 및 명령 실행을 위한 SSH     |
| 21       | FTP                   | 파일 전송을 위한 FTP 프로토콜            |
| 53       | DNS                   | 도메인 이름 해석을 위한 DNS 서비스       |
| 20       | FTP 데이터 전송       | FTP 데이터 전송을 위한 서브포트          |
| 110      | POP3                  | 이메일 수신을 위한 POP3 프로토콜         |
| 143      | IMAP                  | 이메일 수신 및 관리를 위한 IMAP 프로토콜 |
| 3306     | MySQL                 | MySQL 데이터베이스에 접근을 위한 포트   |

주요 포트 번호는 다양한 네트워크 서비스 및 프로토콜과 관련이 있으며, 네트워크 통신에서 특정 서비스를 식별하기 위해 사용됩니다. 다음은 일부 주요 포트 번호와 해당 서비스/프로토콜에 대한 자세한 정보입니다:

1. 80번 포트 (HTTP):
   - HTTP(월드 와이드 웹) 서비스에 사용됩니다.
   - 웹 브라우징과 관련이 있으며, 웹 서버와 클라이언트 간의 웹 페이지 요청 및 응답에 사용됩니다.

2. 443번 포트 (HTTPS):
   - HTTPS(암호화된 HTTP) 통신에 사용됩니다.
   - 웹 서버와 클라이언트 간의 보안된 데이터 전송에 사용되며, SSL/TLS 암호화가 적용됩니다.

3. 25번 포트 (SMTP):
   - SMTP(간단한 메일 전송 프로토콜)는 이메일 전송에 사용됩니다.
   - 이메일 클라이언트가 이메일 서버로 이메일을 보낼 때 사용됩니다.

4. 22번 포트 (SSH):
   - SSH(보안 셸)는 원격 로그인 및 명령 실행을 위한 보안 프로토콜입니다.
   - 원격 서버 관리 및 파일 전송에 사용됩니다.

5. 21번 포트 (FTP):
   - FTP(파일 전송 프로토콜)은 파일 전송을 위한 프로토콜입니다.
   - 파일 업로드 및 다운로드에 사용됩니다.

6. 53번 포트 (DNS):
   - DNS(도메인 이름 시스템)는 도메인 이름을 IP 주소로 해석하는 데 사용됩니다.
   - 인터넷에서 도메인 이름을 해석하기 위한 중요한 서비스입니다.

7. 80번 포트 (FTP 데이터 전송):
   - FTP의 데이터 전송을 위한 서브포트로, 20번 포트와 함께 사용됩니다.
   - FTP에서 파일을 전송하는 데 사용됩니다.

8. 110번 포트 (POP3):
   - POP3(포스트 오피스 프로토콜)는 이메일 수신을 위한 프로토콜입니다.
   - 이메일 클라이언트가 이메일 서버로부터 이메일을 가져올 때 사용됩니다.

9. 143번 포트 (IMAP):
   - IMAP(인터넷 메시지 액세스 프로토콜)은 이메일 수신과 관리를 위한 프로토콜입니다.
   - 이메일 서버와 클라이언트 간에 이메일을 동기화하고 관리하기 위해 사용됩니다.

10. 3306번 포트 (MySQL):
    - MySQL 데이터베이스 서버에 접근하는 데 사용되는 포트입니다.
    - 데이터베이스 관리 및 데이터 검색을 위해 사용됩니다.

이것은 몇 가지 주요 포트 번호와 해당 서비스에 대한 일반적인 정보입니다. 네트워크 관리자나 시스템 관리자는 이러한 포트 번호를 이해하고 관리하여 네트워크의 안전성과 효율성을 확보합니다. 다양한 포트 번호가 서비스 및 프로토콜에 따라 할당되며, 각각은 특정 네트워크 활동을 지원합니다.

 


오늘은 포트번호에 대해서 자세히 알아보았습니다. 뭐 하나 없어서는 안 될 중요한 역할을 하는 것 같습니다. 오늘도 공부한 당신, 응원합니다!

'네트워크' 카테고리의 다른 글

액세스 포인트 란?  (1) 2023.11.15
라우터 란?  (0) 2023.11.14
패킷 교환 방식 이란?  (0) 2023.11.11
회선 교환 방식이란?  (0) 2023.11.11
ARP란?  (0) 2023.11.08
MAC 주소란?  (0) 2023.11.07
IPv4와 IPv6의 차이점  (0) 2023.11.06
IP 주소 란?  (0) 2023.11.02