Linux 에서 netstat 명령어를 이용하면 네트워크 접속 상황을 알 수 있습니다.

이를 활용하여 특정 포트에 접속한 접속자수(소켓 갯수)를 구하는 명령어를 만들어 봅니다.


다음의 명령어는 외부의 웹서버 80포트로 접속한 소켓 갯수를 구합니다. (Remove Port 가 80인 경우)

$ while true; do netstat -nat | grep -P ':80\s+EST' | wc -l; sleep 1; done;

다음의 명령어는 자신의 웹서버 80포트로 접속한 소켓 갯수를 구합니다. (Local Port 가 80인 경우)

$ while true; do netstat -nat | grep -P ':80\s+[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}:[0-9]+\s+EST' | wc -l; sleep 1; done;


grep 에서 \s 는 공백을 뜻하고 \s+ 는 공백이 한개 이상을 의미합니다.


참고:


Posted by 집시F