TCP/IP - 02_네트워크 주소 체계
포트 번호
- TCP, UDP 헤더 안에 포함된 주소
- 주소 크기 : 16bit(2^16 = 0 ~ 65535)
- 클라이언트 입장 : 서비스 요청 및 실행
- 서버 입장 : 서비스 구분 및 제공
- 참고 사이트 : (검새어 : iana port number)
https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml
Service Name and Transport Protocol Port Number Registry
mpm 45 udp Message Processing Module [recv]
www.iana.org
포트 번호는 세 가지 범위로 나뉘며, 각각의 사용 방식은 다음과 같이 정의됩니다:
- 시스템 포트 (System Ports, 0-1023)
- 이 범위의 포트는 IETF 리뷰(IETF Review) 또는 IESG 승인(IESG Approval) 절차에 따라 할당됩니다.
- 일반적으로 운영 체제에서 특권이 필요한 서비스(예: HTTP, FTP, SSH 등)에 사용됩니다
- 사용자 포트 (User Ports, 1024-49151)
- 이 범위의 포트는 IANA(Internet Assigned Numbers Authority)에 의해 할당되며, IETF 리뷰, IESG 승인 또는 전문가 검토(Expert Review) 절차를 통해 배정됩니다.
- 주로 특정 응용 프로그램이나 서비스가 요청하여 등록된 포트입니다
- 동적/개인 포트 (Dynamic and/or Private Ports, 49152-65535)
- 이 범위의 포트는 동적으로 사용되며, IANA에 의해 할당되지 않습니다.
- 운영 체제가 애플리케이션 실행 시 임시로 할당하며, 종료 후 반환됩니다
TCP | Port Number | UDP | Port Number |
http | 80 | domain (DNS) | 53 |
https (SSL) | 443 | bootps (DHCP server) | 67 |
telnet | 23 | bootpc (DHCP client) | 68 |
ssh | 22 | syslog | 514 |
ftp | 21 | ntp | 123 |
ftp-data | 20 | snmp | 161 |
smtp | 25 | tftp | 69 |
pop3 | 110 | mysql | 3306 |
Windows
- 경로: C:\Windows\System32\drivers\etc\services
- 이 파일은 네트워크 서비스 이름과 해당 포트 번호 및 프로토콜 정보를 포함합니다. 예를 들어, HTTP는 포트 80, HTTPS는 포트 443으로 지정됩니다
Linux
- 경로: /etc/services
- 이 파일은 Windows와 유사하게 네트워크 서비스 이름, 포트 번호, 프로토콜 정보를 정의합니다. 이는 표준 네트워크 서비스와 사용자 정의 서비스 설정에 사용됩니다
https://www.wikihow.com/Open-Windows-Services
How to Open Windows Services: 5 Steps (with Pictures) - wikiHow
Windows Services (also known as Services, services.msc, service control manager, part of Microsoft Management Console, and services snap-in) is an app in Windows that allows you to manage the settings of other apps and processes that run...
www.wikihow.com
https://www.minitool.com/news/how-to-open-windows-services.html
8 Ways to Open Windows Services | Fix Services.msc Not Opening - MiniTool
This post covers two parts, how to open Windows Services in Windows 10 in 8 ways, and how to troubleshoot services.msc not opening Windows 10 problem.
www.minitool.com
https://ko.wikipedia.org/wiki/Netstat
netstat - 위키백과, 우리 모두의 백과사전
위키백과, 우리 모두의 백과사전. netstat(network statistics)는 전송 제어 프로토콜, 라우팅 테이블, 수많은 네트워크 인터페이스(네트워크 인터페이스 컨트롤러 또는 소프트웨어 정의 네트워크 인터
ko.wikipedia.org
https://linuxhandbook.com/netstat-command/
Netstat Command in Linux: 13 Practical Examples
Netstat is one of the most common networking commands in Linux. Learn some useful examples of netstat in this tutorial.
linuxhandbook.com
IP 주소
https://velog.io/@satoshi25/IP-%EC%A3%BC%EC%86%8C
IP 주소
네트워크 통신을 할 때 3계층에서 필요한 IP 주소에 대해 알아보려고 한다.
velog.io
https://chaelin1211.github.io/study/2021/05/30/IP-address.html
[네트워크] IP 주소 - Chaelin's Blog
3.3 IP 주소 OSI 계층에서 주소를 갖는 계층은 다음의 두 계층입니다. 2계층(데이터 링크 계층): 물리 주소인 MAC 주소 3계층(네트워크 계층): 논리 주소인 IP 주소 IP 주소를 포함한 다른 프로토콜 스
chaelin1211.github.io
MAC 주소
- ETH 헤더 안에 포함된 주소
- 주소 크기 : 48bit
- ETH 로컬 환경 내에서 데이터 전송 담다
MAC 주소는 48비트 숫자로 구성되어있고 그 중 앞쪽 24비트는 랜카드를 만드는 제조사 번호 뒤쪽 24비트는 제조사가 랜 카드에 붙인 일련번호이다.
이더넷 헤더는 목적지 MAC 주소, 출발지 MAC 주소, 유형으로 총 14바이트로 구성되어있다.
데이터 링크 계층에서 데이터 뒤에 추가하는 것을 트레일러라 한다.
https://velog.io/@minj9_6/MAC-%EC%A3%BC%EC%86%8C%EC%9D%98-%EA%B5%AC%EC%A1%B0
MAC 주소의 구조
✅랜 카드를 제조할 때 정해지는 물리적 주소에 대해 알아보자
velog.io
1. A에서 B로 데이터가 전송될 때
캡슐화 과정 (송신 측 - A)
- 응용 계층 (Application Layer)
- 사용자가 보낸 데이터(예: 파일, 메시지)가 생성됩니다.
- 이 데이터는 응용 계층 프로토콜(예: HTTP, FTP 등)에 의해 처리됩니다.
- 전송 계층 (Transport Layer)
- 데이터에 TCP 또는 UDP 헤더가 추가됩니다.
- TCP는 신뢰성을 보장하기 위해 세그먼트(segment)를 생성하고 포트 번호를 포함합니다.
- 네트워크 계층 (Network Layer)
- 세그먼트에 IP 헤더가 추가되어 패킷(packet)이 생성됩니다.
- 이 단계에서 송신자와 수신자의 IP 주소가 포함됩니다.
- 데이터 링크 계층 (Data Link Layer)
- 패킷에 MAC 주소를 포함한 프레임(frame)이 생성됩니다.
- A의 MAC 주소(출발지)와 B의 MAC 주소(목적지)가 포함됩니다.
- 물리 계층 (Physical Layer)
- 프레임이 전기 신호로 변환되어 스위치를 통해 전송됩니다.
디캡슐화 과정 (수신 측 - B)
- 물리 계층
- 전기 신호가 다시 디지털 데이터로 변환됩니다.
- 데이터 링크 계층
- 프레임 헤더가 제거되고 패킷이 추출됩니다.
- MAC 주소를 확인하여 자신(B)에게 온 데이터인지 검증합니다.
- 네트워크 계층
- IP 헤더가 제거되고 세그먼트가 추출됩니다.
- IP 주소를 확인하여 자신에게 온 데이터인지 확인합니다.
- 전송 계층
- TCP/UDP 헤더가 제거되고 원래의 데이터가 복원됩니다.
- 응용 계층
- 최종적으로 사용자가 요청한 데이터가 애플리케이션으로 전달됩니다.
2. A에서 G로 데이터가 전송될 때
A에서 G로 데이터를 보내는 과정은 LAN과 WAN을 모두 거치는 복합적인 경로를 포함합니다.
A에서 C까지 (LAN)
- A에서 C로의 캡슐화 및 디캡슐화 과정은 위의 A → B와 동일합니다.
- C는 멀티레이어 스위치로서 데이터를 처리하고 다음 경로(D → E → F → G)를 설정합니다.
C에서 F까지 (WAN)
WAN 구간에서는 HDLC 프로토콜이 사용되며, 네트워크 계층과 데이터 링크 계층이 중요한 역할을 합니다.
- 캡슐화 (C → D → E → F)
- C는 패킷을 HDLC 프레임으로 변환하여 D로 전송합니다.
- D와 E는 라우터 역할을 하며, 각 네트워크 구간을 거칠 때마다 MAC 주소를 갱신하고 HDLC 프레임을 재구성합니다.
- 디캡슐화 (F)
- F는 WAN 구간을 통해 도착한 데이터를 디캡슐화하여 패킷 형태로 복원합니다.
- 이후 LAN으로 데이터를 전달합니다.
F에서 G까지 (LAN)
- F에서 G로의 캡슐화 및 디캡슐화 과정은 A → B와 동일합니다.
- F는 스위치를 통해 G에게 데이터를 전달하며, 최종적으로 G가 데이터를 수신하고 처리합니다.
정리
- A → B: LAN 내부 통신으로 비교적 간단한 캡슐화/디캡슐화 과정이 이루어집니다.
- A → G: LAN과 WAN을 모두 거치며, WAN 구간에서는 HDLC 프로토콜을 통해 데이터 링크 계층의 추가적인 처리가 이루어집니다.
- 각 구간마다 캡슐화 및 디캡슐화를 반복하며, 최종적으로 데이터를 목적지(G)에서 완전히 복원합니다.