如何检查我的电脑在localhost上是否打开了一组10,000个连续端口?

时间:2015-03-30 07:08:59

标签: tcp cmd port server

总而言之,我想在localhost上有10000个开放端口,而且我的项目也需要55000到65000个。我希望确保端口的集合(10,000个连续端口)是开放的。

我在这里描述三类端口: -

众所周知的端口是从0到1023的那些端口。

注册端口是1024到49151

的端口

动态和/或专用端口是49152到65535

的端口

我想知道一些cmd命令可以解决我的目的。(我使用的是Windows操作系统)。

我的系统支持netstat,但我想要一些其他命令或工具来解决我的目的,因为我发现netstat非常耗时且手动检查。

提前致谢

2 个答案:

答案 0 :(得分:1)

实际上,Windows netstat,您可以处理输出以查找已建立的会话:

C:\pax> netstat -na

Active Connections

  Proto  Local Address          Foreign Address        State
  TCP    0.0.0.0:80             0.0.0.0:0              LISTENING
  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING
  TCP    10.6.0.127:54140       143.127.136.95:443     ESTABLISHED
  TCP    10.6.0.127:54259       192.168.2.47:32308     ESTABLISHED
  TCP    10.6.0.127:54263       192.168.2.47:32308     ESTABLISHED
  TCP    10.6.0.127:54274       192.168.2.22:50207     ESTABLISHED
  TCP    10.6.0.127:54319       192.168.2.40:5061      ESTABLISHED

但我终于放弃了cmd.exe作为脚本语言。


您还可以在Powershell中使用get-nettcpconnection来获取类似信息:

PS C:\pax> Get-NetTCPConnection
           | format-table -autosize

LocalAddress LocalPort RemoteAddress   RemotePort State       AppliedSetting
------------ --------- -------------   ---------- -----       --------------
::           54122     ::              0          Listen
::           54104     ::              0          Listen
::           49156     ::              0          Listen
::           445       ::              0          Listen
::           135       ::              0          Listen
10.6.0.127   56321     10.4.0.96       445        Established Internet
127.0.0.1    56053     127.0.0.1       8085       TimeWait
127.0.0.1    56052     127.0.0.1       8085       TimeWait
10.6.0.127   56046     192.168.2.13    445        Established Internet
127.0.0.1    56043     127.0.0.1       8085       TimeWait
10.6.0.127   56039     192.168.2.13    49814      Established Internet
10.6.0.127   56038     192.168.2.13    135        TimeWait
10.6.0.127   56035     216.58.220.142  443        Established Internet
: : :

Powershell方式首选,至少是智能人员,例如I :-),因为它具有过滤和修改数据的所有这些出色功能:

PS C:\pax> get-nettcpconnection
           | where-object {$_.State -eq 'Established'}
           | select-object 'LocalPort'
           | sort-object 'LocalPort'
           | format-table -autosize

LocalPort
---------
    23560
    49735
    49736
    54140
    54145
    54259
    54263
    : : :

任何更复杂的处理(如查找10,000个连续连接)都可以在PS1脚本中完成,类​​似于过去使用CMD文件的方式。

答案 1 :(得分:0)


我建议您使用microsoft port scanner非常简单的语法download
用于检查本地的语法

PortQry.exe -local

你也可以使用microsoft powershell看到这个link