Mac의 최대 연결 수 제한 및 포트에 대한 매개 변수 설정
최대 접속 수 제한
최대 접속 수 제한은 시스템이 열 수 있는 최대 파일 수 (파일 설명자) 의 제한입니다. 전역과 프로세스 두 가지로 나뉘며 해당하는 명령은 다음과 같습니다.
$ sysctl kern.maxfiles
출력:kern.maxfiles: 12288 설명: 전역 제한, 즉 시스템 기본 최대 연결수 제한은 12288입니다
$ sysctl kern.maxfilesperproc
출력:kern.maxfilesperproc: 10240 설명: 단일 프로세스의 기본 최대 연결 수 제한은 10240입니다
$ sudo sysctl -w kern.maxfiles=1048600
출력:kern.maxfiles: 12288 -> 1048600 설명: 시스템 최대 연결수 12288 ~ 1048600 설정
$ sudo sysctl -w kern.maxfilesperproc=1048576
출력:kern.maxfilesperproc: 10240 -> 1048576 설명: 프로세스 연결 수 제한을 설정합니다. 프로세스의 최대 연결 수는 전역 연결 수보다 작습니다.
ulimit 명령
$ ulimit -n
출력: 2560 설명: "ulimit - n"명령은 현재 셸이 열 수 있는 최대 파일 수를 표시합니다. 기본값: 2560, 이 값은kern보다 작습니다.셸이 프로세스이기 때문에 maxfilesperproc의 값입니다.
$ ulimit -n 1048576
설명: 현재 셸이 열 수 있는 최대 파일 수를 1048576으로 설정합니다. 이 값은kern보다 크면 안 됩니다.maxfilesperproc, 그렇지 않으면 설정 실패를 알립니다.
동적 포트 범위
$ sysctl net.inet.ip.portrange
출력:net.inet.ip.portrange.first: 49152 net.inet.ip.portrange.last: 65535
Linux 동적 포트 번호의 기본 범위는 32768-65535입니다. 즉, 클라이언트가 같은 IP와 같은 포트 번호를 연결하면 최대 30000여 개의 연결만 만들 수 있고, Mac은 기본적으로 16000개 정도의 연결만 할 수 있습니다.
$ sysctl -w net.inet.ip.portrange.first=32768
설명: 동적 분배 시작 포트 번호를 32768로 설정하면 클라이언트가 설정할 수 있는 연결 수를 늘릴 수 있습니다.
참고: IANA 포트 번호 목록에는 잘 알려진 등록 포트 번호가 포함되며 동적 포트 번호 범위를 지정합니다.
문제
이상의 방식으로 매개 변수를 설정하는 데 문제가 있습니다. 시스템이 다시 시작된 후에 이 매개 변수들은 기본값으로 회복됩니다. 해결 방법은 매개 변수를/etc/sysctl에 쓰는 것입니다.conf 파일에 있지만 기본적으로 이 파일은 존재하지 않기 때문에 먼저 만들어야 합니다.
sudo touch /etc/sysctl.conf
그리고 파라미터를 파일에 쓰세요.
kern.maxfiles=1048600
kern.maxfilesperproc=1048576
net.inet.ip.portrange.first=49152
net.inet.ip.portrange.last=65535
시스템을 다시 시작하고 결과를 보고 성공을 표시합니다.
ulimit-n
의 값은 ulimit-n 1048576
까지 쓸 수 있다.bashrc에서 자동 수정을 실현합니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
함대 프로비저닝 전에 후크하는 람다 작성 예마지막 기사의 계속으로, 플릿 프로비저닝 전에 후크하는 Lambda의 작성 예를 기재합니다. 일련 번호와 프로비저닝 허용/거부를 나타내는 값이 포함 된 CSV 파일을 S3에 저장 Lambda에서이 CSV 파일을 참조...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.