总而言之,我想在localhost上有10000个开放端口,而且我的项目也需要55000到65000个。我希望确保端口的集合(10,000个连续端口)是开放的。
我在这里描述三类端口: -
我想知道一些cmd命令可以解决我的目的。(我使用的是Windows操作系统)。
提前致谢
答案 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)