• Windows/Linux OS에서 포트 고갈에 대한 이해와 확인에 대한 참고용 메모 (Update: Mar 30, 2021)

1. 포트 고갈

동일한 브라우저가 여러 웹 사이트에 대한 많은 연결을 생성하는 시나리오에서는 브라우저가 시도 중인 모든 새 연결에 대해 사용 후 임시 포트가 사용됩니다. 시간이 지나면 연결이 실패하기 시작하고 브라우저가 사용 가능한 모든 포트를 사용하여 외부 연결을 설정한 후 더 이상 사용할 수 있는 포트가 없으므로 연결을 설정하려는 시도가 실패할 수 있습니다. 시스템에 있는 모든 포트가 사용되면 이를 포트 소모라고 합니다.

참고 글: MS - 포트 소모 문제 해결

2. 동적 포트 범위 확인

; Windows OS

C:\Users\USER1> netsh int ipv4 show dynamicport tcp

프로토콜 tcp 동적 포트 범위
---------------------------------
시작 포트: 49152
포트 수: 16384


C:\Users\USER1> netsh int ipv4 show dynamicport udp

프로토콜 udp 동적 포트 범위
---------------------------------
시작 포트: 49152
포트 수: 16384

; Linux OS

USER1@SVR1 ~]$ sudo sysctl -A |grep ip_local_port_range
net.ipv4.ip_local_port_range = 32768    60999

USER1@SVR1 ~]$ sysctl net.ipv4.ip_local_port_range
net.ipv4.ip_local_port_range = 32768    60999

USER1@SVR1 ~]$ ss -s
Total: 1149 (kernel 1367)
TCP:   2582 (estab 608, closed 1952, orphaned 1, synrecv 0, timewait 1946/0), ports 1080

Transport Total     IP        IPv6
*         1367      -         -
RAW       1         1         0
UDP       37        26        11
TCP       630       385       245
INET      668       412       256
FRAG      0         0         0

참고 글: Linux Increase TCP Port Range with net.ipv4.ip_local_port_range Kernel Parameter