특정 포트를 확인하기 위한 명령줄
Windows 명령줄에서 특정 포트의 상태를 검사할 수 있는 방법이 있습니까?netstat을 사용하여 모든 포트를 검사할 수 있지만 netstat은 느리고 특정 포트를 보면 그렇지 않을 수 있습니다.
여기 포트 찾기의 쉬운 해결책이 있습니다...
cmd 단위:
netstat -na | find "8080"
배시:
netstat -na | grep "8080"
PowerShell에서:
netstat -na | Select-String "8080"
사용할 수 있습니다.netstat
와 결합하여-np
에의 깃발과 파이프find
또는findstr
명령을 실행합니다.
기본 용도는 다음과 같습니다.
netstat -np <protocol> | find "port #"
예를 들어 TCP의 포트 80을 확인하려면 다음 작업을 수행합니다.netstat -np TCP | find "80"
그러면 다음과 같은 출력이 나옵니다.
TCP 192.168.0.105:50466 64.34.119.101:80 ESTABLISHED
TCP 192.168.0.105:50496 64.34.119.101:80 ESTABLISHED
보시다시피 TCP 프로토콜에 대한 포트 80의 연결만 표시됩니다.
사용자:
netstat –aon | find "<port number>"
여기서 o는 프로세스 ID를 나타냅니다.이제 프로세스 ID로 무엇이든 할 수 있습니다.프로세스를 종료하려면 다음을 사용합니다.
taskkill /F /pid <process ID>
제가 WAMP apache에 문제가 있을 때, 저는 포트 80을 사용하는 프로그램을 찾기 위해 이 코드를 사용합니다.
netstat -o -n -a | findstr 0.0:80
3068
PID이기 때문에 작업 관리자에게 찾아서 해당 프로세스를 중지할 수 있습니다.
다른 내용과 같이 적절한 스위치와 함께 netstat를 사용한 다음 find[str]를 사용하여 결과를 필터링합니다.
가장 기본적인 것:
netstat -an | find ":N"
또는
netstat -a -n | find ":N"
사용할 수 있는 외부 포트 찾기:
netstat -an | findstr ":N[^:]*$"
로컬 포트를 찾으려면 다음을 사용합니다.
netstat -an | findstr ":N.*:[^:]*$"
여기서 N은 관심 있는 포트 번호입니다.
-n
모든 포트가 숫자로 표시됩니다. 즉, 서비스 이름으로 변환된 대로 반환되지 않습니다.
-a
모든 연결(TCP, UDP, 수신...)을 검색합니다.
에서find
string: 콜론을 포트 한정자로 포함해야 합니다. 그렇지 않으면 번호가 로컬 또는 외부 주소와 일치할 수 있습니다.
필요에 따라 다른 netstat 스위치를 사용하여 검색 범위를 더 좁힐 수 있습니다.
추가 판독(^0^)
netstat /?
find /?
findstr /?
netstat -a -n | find /c "10.240.199.9:8080"
특정 IP 및 포트(서버 포트 번호)에서 활성화된 소켓 수를 제공합니다.
특정 IP의 모든 활성 소켓을 제공합니다.
netstat -an | find "172.20.1.166"
@EndUzr의 응답을 개선하기 위해:
외부 포트(IPv4 또는 IPv6)를 찾으려면 다음을 사용할 수 있습니다.
netstat -an | findstr /r /c:":N [^:]*$"
로컬 포트(IPv4 또는 IPv6)를 찾으려면 다음을 사용합니다.
netstat -an | findstr /r /c:":N *[^ ]*:[^ ]* "
여기서 N은 관심 있는 포트 번호입니다."/r" 스위치는 regexp로 처리하도록 지시합니다."/c" 스위치를 사용하면 findstr은 공백을 검색 문자열 구분 기호로 처리하는 대신 검색 문자열 내에 공백을 포함할 수 있습니다.이렇게 공간이 추가되면 ":80" 대 ":8080" 및 기타 포트 멍 문제와 같은 더 긴 포트가 잘못 처리되는 것을 방지할 수 있습니다.
로컬 RDP 서버에 대한 원격 연결을 나열하려면 다음과 같이 하십시오.
netstat -an | findstr /r /c:":3389 *[^ ]*:[^ ]*"
또는 DNS를 터치하는 사용자를 확인하려면:
netstat -an | findstr /r /c:":53 *[^ ]*:[^ ]*"
로컬 전용 포트를 제외하려면 "/v"와 함께 예외를 사용하고 백슬래시와 함께 이스케이프 문자를 사용할 수 있습니다.
netstat -an | findstr /v "0.0.0.0 127.0.0.1 \[::\] \[::1\] \*\:\*" | findstr /r /c:":80 *[^ ]*:[^ ]*"
Windows 8 사용자: 명령 프롬프트 열기에 대해 netstat -an | find "your port number"를 입력하고 를 입력합니다.
LISTENING과 같은 응답이 오면 포트가 사용 중이고, 그렇지 않으면 무료입니다.
이것은 당신에게 도움이 될 것입니다.
netstat -atn | grep <port no> # For tcp
netstat -aun | grep <port no> # For udp
netstat -atun | grep <port no> # For both
포트 80의 경우 명령은 다음과 같습니다. netstat - an | find "80" 포트 n의 경우 명령은 다음과 같습니다. netstat - an | find "n"
여기서, netstat는 당신의 기계에 대한 지침입니다.
-a : 모든 연결 및 수신 포트 표시 -n : 모든 주소와 명령을 숫자 형식으로 표시합니다(-a의 출력에 기계 이름이 포함될 수 있으므로 이는 필수).
그런 다음 find 명령을 사용하여 이전 명령의 출력을 "패턴 일치"합니다.
RHEL 7에서는 다음 명령을 사용하여 LISTEN 상태의 여러 포트를 필터링합니다.
sudo netstat -tulpn | grep LISTEN | egrep '(8080 |8082 |8083 | etc )'
Linux에서: 외부 포트를 찾으려면 다음을 사용합니다.
netstat - anp | grep 포트 | '{ print $5}' | grep 포트
로컬 포트를 찾으려면 다음을 사용합니다.
netstat - anp | grep 포트 | '{ print $4}' | grep 포트
정확히 일치하는 경우 [윈도우즈 명령 프롬프트]
netstat -aon | findstr "\<5000\>"
여러 포트를 확인해야 하는 경우 검색을 위해 여러 문자열이 있는 findstr을 사용하는 가장 간단한 방법입니다.
findstr /C:":80 " /C:":443 " /C:":8080"
포트 번호 뒤의 공백은 중요하며 공백 findstr은 ":80"에서 시작하는 모든 항목을 선택합니다.이 경우 전체 명령은 다음과 같습니다.
netstat -an | findstr /C:":80 " /C:":443 " /C:":8080"
lsof -i tcp:port # 명령어 "lsof -i tcp:port #"를 사용하십시오. 여기 예가 있습니다.
$ lsof -i tcp:1555
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 27330 john 121u IPv4 36028819 0t0 TCP 10.10.10.1:58615->10.10.10.10:livelan (ESTABLISHED)
java 27330 john 201u IPv4 36018833 0t0 TCP 10.10.10.1:58586->10.10.10.10:livelan (ESTABLISHED)
java 27330 john 264u IPv4 36020018 0t0 TCP 10.10.10.1:58598->10.10.10.10:livelan (ESTABLISHED)
java 27330 john 312u IPv4 36058194 0t0 TCP 10.10.10.1:58826->10.10.10.10:livelan (ESTABLISHED)
이 명령은 모든 포트와 대상 주소를 표시합니다.
netstat -f
언급URL : https://stackoverflow.com/questions/12010631/command-line-for-looking-at-specific-port
'programing' 카테고리의 다른 글
Gitdiff 도구 및 병합 도구로 Meld 설정 및 사용 (0) | 2023.05.29 |
---|---|
VB.NET에서 A 클래스를 정적으로 표시 (0) | 2023.05.29 |
컴파일러/J에 제공할 수 있는 최적화 힌트는 무엇입니까?IT? (0) | 2023.05.29 |
Git 저장소를 특정 커밋으로 전환하는 방법 (0) | 2023.05.29 |
gitc fatal: 불량 객체 refs/remote/origin/HEAD 오류를 처리하는 방법? (0) | 2023.05.29 |