怎么查电脑端口由那个程序使用
1Windows本身自带的netstat命令
关于netstat命令,我们先来看看windows帮助文件中的介绍:
Netstat
显示协议统计和当前的 TCP/IP 网络连接。该命令只有在安装了 TCP/IP 协议后才可以使用。
netstat [-a] [-e] [-n] [-s] [-p protocol] [-r] [interval]
参数
-a -显示所有连接和侦听端口。服务器连接通常不显示。
-e -显示以太网统计。该参数可以与 -s 选项结合使用。
-n -以数字格式显示地址和端口号(而不是尝试查找名称)。
-s -显示每个协议的统计。默认情况下,显示 TCP、UDP、ICMP 和 IP 的统计。-p 选项可以用来指定默认的子集。
-p protocol -显示由 protocol 指定的协议的连接;protocol 可以是 tcp 或 udp。如果与 -s 选项一同使用显示每个协议的统计,protocol 可以是 tcp、udp、icmp 或 ip。
-r -显示路由表的内容。
interval
重新显示所选的统计,在每次显示之间暂停 interval 秒。按 CTRL+B 停止重新显示统计。如果省略该参数,netstat 将打印一次当前的配置信息。
好了,看完这些帮助文件,我们应该明白netstat命令的使用方法了。现在就让我们现学现用,用这个命令看一下自己的机器开放的端口。进入到命令行下,使用netstat命令的a和n两个参数:
C:\>netstat -an
Active Connections
Proto Local Address Foreign Address State
TCP 0000:80 0000:0 LISTENING
TCP 0000:21 0000:0 LISTENING
TCP 0000:7626 0000:0 LISTENING
UDP 0000:445 0000:0
UDP 0000:1046 0000:0
UDP 0000:1047 0000:0
解释一下,Active Connections是指当前本机活动连接,Proto是指连接使用的协议名称,Local Address是本地计算机的 IP 地址和连接正在使用的端口号,Foreign Address是连接该端口的远程计算机的 IP 地址和端口号,State则是表明TCP 连接的状态,你可以看到后面三行的监听端口是UDP协议的,所以没有State表示的状态。看!我的机器的7626端口已经开放,正在监听等待连接,像这样的情况极有可能是已经感染了冰河!急忙断开网络,用杀毒软件查杀病毒是正确的做法。
2工作在windows2000下的命令行工具fport
使用windows2000的朋友要比使用windows9X的幸运一些,因为可以使用fport这个程序来显示本机开放端口与进程的对应关系。
Fport是FoundStone出品的一个用来列出系统中所有打开的TCP/IP和UDP端口,以及它们对应应用程序的完整路径、PID标识、进程名称等信息的软件。在命令行下使用,请看例子:
D:\>fportexe
FPort v133 - TCP/IP Process to Port Mapper
Copyright 2000 by Foundstone, Inc
http://wwwfoundstonecom
Pid Process Port Proto Path
748 tcpsvcs -> 7 TCP C:\WINNT\System32\ tcpsvcsexe
748 tcpsvcs -> 9 TCP C:\WINNT\System32\tcpsvcsexe
748 tcpsvcs -> 19 TCP C:\WINNT\System32\tcpsvcsexe
416 svchost -> 135 TCP C:\WINNT\system32\svchostexe
是不是一目了然了。这下,各个端口究竟是什么程序打开的就都在你眼皮底下了。如果发现有某个可疑程序打开了某个可疑端口,可千万不要大意哦,也许那就是一只狡猾的木马!
Fport的最新版本是20。在很多网站都提供下载,但是为了安全起见,当然最好还是到它的老家去下:点击下载
3与Fport功能类似的图形化界面工具Active Ports
Active Ports为SmartLine出品,你可以用来监视电脑所有打开的TCP/IP/UDP端口,不但可以将你所有的端口显示出来,还显示所有端口所对应的程序所在的路径,本地IP和远端IP(试图连接你的电脑IP)是否正在活动。
更棒的是,它还提供了一个关闭端口的功能,在你用它发现木马开放的端口时,可以立即将端口关闭。这个软件工作在Windows NT/2000/XP平台下。你可以在http://wwwsmartlineru/software/aportszip得到它。
端口+IP=socket(套接字),IP表示目标电脑的地址,端口表示目标电脑操作系统上的进程
所以套接字可以唯一标识一个程序,如果一个端口被多个程序使用那怎么才能知道发送的数据给谁呢?
所以一个端口是不能供多个程序使用的
但是一个程序是可以使用多个端口的,不同的端口可以连接不同的服务器程序,以提供不同的服务
通过端口可以为一个程序提供不同的功能
0条评论