在不能安装Telnet命令的情况下如何判断远程端口启用?
有的时候我们的Windows服务器没有权限安装Telnet Feature或者此功能被管理员禁用,这个时候我们有没有什么更为简便的方法去测试远程端口是否开启呢? 答案就是PowerShell命令。 下面是具体的操作步骤。
(1)假设我们已经搭建了一个Web服务器
python -m SimpleHTTPServer 9999
或者
python -m http.server 9999

(2)使用PowerShell的命令:Test-NetConnection 命令进行尝试
PS C:\Users\ Test-NetConnection -ComputerName 127.0.0.1 -Port 9999
ComputerName : 127.0.0.1
RemoteAddress : 127.0.0.1
RemotePort : 9999
InterfaceAlias : Loopback Pseudo-Interface 1
SourceAddress : 127.0.0.1
TcpTestSucceeded : True

TcpTestSucceeded : True 表示连接成功。如果换一个没有开放的端口,比如
9998,则会显示Failed 并且TcpTestSucceeded : False
Test-NetConnection -ComputerName 127.0.0.1 -Port 9998
警告: TCP connect to (127.0.0.1 : 9998) failed
ComputerName : 127.0.0.1
RemoteAddress : 127.0.0.1
RemotePort : 9998
InterfaceAlias : Loopback Pseudo-Interface 1
SourceAddress : 127.0.0.1
PingSucceeded : True
PingReplyDetails (RTT) : 0 ms
TcpTestSucceeded : False
(3)或者使用PowerShell的命令:TcpClient 命令进行尝试
New-Object System.Net.Sockets.TcpClient("127.0.0.1",9999)Client : System.Net.Sockets.Socket
Available : 0
Connected : True
ExclusiveAddressUse : False
ReceiveBufferSize : 65536
SendBufferSize : 65536
ReceiveTimeout : 0
SendTimeout : 0
LingerState : System.Net.Sockets.LingerOption
NoDelay : False
Connected : True 代表连接上
如果换一个不存在的端口,其则立刻报出异常~
New-Object System.Net.Sockets.TcpClient("127.0.0.1",9998)
New-Object : 使用“2”个参数调用“.ctor”时发生异常:“由于目标计算机积极拒绝,无法连接。 127.0.0.1:9998”
所在位置 行:1 字符: 1
+ New-Object System.Net.Sockets.TcpClient("127.0.0.1",9998)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+ CategoryInfo : InvalidOperation: (:) [New-Object],MethodInvocationException+ FullyQualifiedErrorId : ConstructorInvokedThrowException,Microsoft.PowerShell.Commands.NewObjectCommand

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
