如何检测远程主机上的某个端口是否开启

如何检测远程主机上的某个端口是否开启,第1张

1、安装telnet。我的win7下就没有telnet,在cmd下输入telnet提示没有该命令。于是我们进入控制面板---->程序---->打开或关闭windows功能。然后等一段时间,在出来的对话框把telnet客户端和telnet服务器勾选上,其他的不用管,然后点击确定。这样就安装好了telnet组件了。

2、 下面开始测试某个端口是否开启,比如我测的是192168342的2121这个端口。在cmd下输入

start /min telnet 192168342 2121

之后会出现一个窗口,是最小化的,你等一会,如果窗口自动关闭了,说明端口是关闭的或主机ping不通,反之端口开放

比如这个2121端口是开放的,就出现如图所以的窗口,否则窗口关闭。

3、你可以用自己的机子做实验在CMD下输入netstat -anp tcp可以查看当前主机tcp开放了哪些端口

最后 ping命令是不能检测端口,只能检测你和相应IP是否能连通

补充: Linux下检测本机的端口是否被占用:

netstat –apn | grep 8080

又或者在,windows下

在cmd里面使用netstat -an命令来查看 开放的TCP和UDP端口。

在cmd里面使用start /min telnet 127001 某端口,之后会出现一个窗口,是最小化的,你等一会,如果窗口自动关闭了,说明端口是关闭,反之端口开放。

Linux下

如windows下使用telnet的方法

使用nc命令

nc检测端口的用法:

nc -z -w 10 %ip% %PORT%

-z表示检测或者扫描端口

-w表示超时时间

-u表示使用UDP协议

例如:

# nc -z -w 10 -u 127001 53

Connection to 127001 53 port [udp/domain] succeeded!

# nc -z -w 10127001 53

Connection to 127001 53 port [tcp/domain] succeeded!

# echo $

0

# nc -z -w 10 8887 53

# echo $

1

#

端口成功联通返回值是0,提示succeeded;否则返回1,不提示任何数据。linux下未作测试,自行测试。

1安装Telnet组件。转到程序控制面板,然后转到打开或关闭窗口功能,Telnet客户端和Telnet服务器勾选,从而安装Telnet组件。

2测试端口是否打开。它是由机器打开的虚拟机的地址,192168106128,端口22。在CMD下输入Telnet后,将出现一个窗口,提示您输入帮助以查看选项。

3接下来,o型19216810612822表明端口连接失败,表明港口可能占领或不开放(我这次连接失败,因为Ubuntu就安装在虚拟机没有SSH服务,所以我成功地连接到SSH服务后使用命令sudoapt-get安装SSH)。

如果打开另外一个窗口,说明连接成功。

4你可以用自己的机器做实验。在CMD下输入netstat-anpTCP,查看当前主机TCP打开了哪些端口。

一、以windows系统为例查看IP和远程连接端口的方法:

1窗口键+R,输入cmd回车

2输入ipconfig

看到IP地址

netstat

-ano看到端口号

备注:端口和机器上运行的软件有关,不同的软件端口不一样的例如浏览网页使用80号端口机器上端口号可能会很多,因为你运行的程序会很多。

二、以linux系统为例查看IP和远程连接端口的方法:

运行中输入ifconfig看IP地址

输入netstat看端口

工具/原料

nc

telnet

方法/步骤

1、首先端口分tcp、udp之分,所以同一个端口号还有tcp协议和udp协议之分。

2、最常见的工具是telnet,但是telnet使用的是tcp协议,换句话说telnet只能检测tcp的这个端口打开了没。

3、假设要看192192193211这个IP的tcp 22端口是否打开,则运行telnet 192192193211 22 来查看,如果出现下列信息,则表示该端口已打开。

4、如果出现下面信息,表是该端口未打开。

5、除了telnet以外,还有一个命令nc也可查看端口是否打开。

6、同样查看tcp 22端口是否打开,可以运行nc  -z 192192193211 22,打开着就会出现下列信息:

7、那如果想要查看udp 22 端口是否打开,运行 nc –uz 192192193211 22, 打开这就会出现这些信息:

8、如果查询的端口没有打开,会出现以下输出:

8、nc 还可以一次性查看多了端口,例如:

在服务器中要查看端口,可以使用Netstat命令: 

1、依次点击“开始→运行”,键入“cmd”并回车,打开命令提示符窗口。

2、在命令提示符状态下键入“netstat -a -n”,按下回车键后就可以看到以数字形式显示的TCP和UDP连接的端口号及状态。

端口相关的概念:

在网络技术中,端口(Port)包括逻辑端口和物理端口两种类型。物理端口指的是物理存在的端口,如ADSL Modem、集线器、交换机、路由器上用 于连接其他网络设备的接口,如RJ-45端口、SC端口等等。逻辑端口是指逻辑意义上用于区分服务的端口,如TCP/IP协议中的服务端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等。由于物理端口和逻辑端口数量较多,为了对端口进行区分,将每个端口进行了编号,这就是端口号

端口按端口号可以分为3大类:

1:公认端口(Well Known Port)

公认端口号从0到1023,它们紧密绑定与一些常见服务,例如FTP服务使用端口21,你在 /etc/services 里面可以看到这种映射关系。 

2:注册端口(Registered Ports): 

从1024到49151。它们松散地绑定于一些服务。也就是说有许多服务绑定于这些端口,这些端口同样用于许多其它目的。

3: 动态或私有端口(Dynamic and/or Private Ports)

动态端口,即私人端口号(private port numbers),是可用于任意软件与任何其他的软件通信的端口数,使用因特网的传输控制协议,或用户传输协议。动态端口一般4915265535Linux中有限定端口的使用范围,如果我要为我的程序预留某些端口,那么我需要控制这个端口范围。/proc/sys/net/ipv4/ip_local_port_range定义了本地TCP/UDP的端口范围,你可以在/etc/sysctlconf里面定义netipv4ip_local_port_range = 1024 65000。

如果你是在本地想知道远程服务器开的端口的话,去下载一个端口扫描器,扫一下目标机器开放的端口,然后再用远程连接试!(前提,对方机器无防火墙)这些工具比如:ssportexe

如果你已经登陆了目标机器,想知道他开的3389端口改成多少了。你可以进入注册表查看:

hkey_local_machine\system\currentcontrolset\control\terminal

server\wds\repwd\tds\tcp

portnumber的值,这个是16进制的,点开之后有个转换选项,可以看到10进制的值

1、点击桌面右下角“开始”,点击“运行”。

2、 在运行输入框中输入cmd,点击确定。

3、在命令行中输入如下命令:

netstat -ano ( 意思是查询当前计算机服务的命令)

4、在查询出来的信息中,proto代表使用的计算机协议,有TCP和UDP两种; Local Address指的是本地的IP地址; Foreign Address指的是外部IP地址,也就是与本机连接或者监听的对方IP地址。State代表当前服务的状态,有监听、建立连接等状态;PID代表当前服务在计算机中运行的ID号。

5、在查询到的服务中,如果发现有一行代码中本地使用的端口是“3389”,当前处于监听状态,正在等待外部计算机通过3389端口连接到本地。

使用快捷键:按下 Windows 键 + R 键组合。

2打开运行

3在运行输入CMD并点确定

4打开CMD

5在CMD输入netstat -ano 

6点击回车展示全部连接信息

这些命令将显示当前的TCP列表、传输控制协议连接和端口、连接到本地地址的计算机名和远程连接地址的主机名。它还可以告诉你每个端口的状态(等待、已建立连接的端口等等)。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 如何检测远程主机上的某个端口是否开启

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情