linux_怎么查看端口占用情况
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
?怎么查看端口占用情况?
开始--运行--cmd 进入命令提示符 输入netstat -ano 即可看到所有连接的PID 之后在任务管理器中找到这个PID所对应的程序如果任务管理器中没有PID这一项,可以在任务管理器中选"查看"-"选择列"
经常,我们在启动应用的时候发现系统需要的端口被别的程序占用,如何知道谁占有了我们需要的端口,很多人都比较头疼,下面就介绍一种非常简单的方法,希望对大家有用
假如我们需要确定谁占用了我们的9050端口
在windows命令行窗口下执行:
C:\>netstat -aon|findstr "9050"
TCP 127.0.0.1:9050 0.0.0.0:0 LISTENING 2016
看到了吗,端口被进程号为2016的进程占用,继续执行下面命令:
C:\>tasklist |findstr "2016"
tor.exe 2016 Console 0 16,064 K
很清楚吧,tor占用了你的端口。
“Tasklist”命令是一个用来显示运行在本地或远程计算机上的所有进程的命令行工具,带有多个执行参数。
它的使用格式为:
TASKLIST [/S system [/U username [/P [password]]]] [/M [module] | /SVC | /V] [/FI filter] [/FO format] [/NH]
参数列表:
/S system 指定连接到的远程系统。
/U [domain\]user 指定使用哪个用户执行这个命令。
/P [password] 为指定的用户指定密码。
/M [module] 列出调用指定的 DLL 模块的所有进程。
如果没有指定模块名,显示每个进程加载的所有模块。
/SVC 显示每个进程中的服务。
/V 指定要显示详述信息。
/FI filter 显示一系列符合筛选器指定的进程。
/FO format 指定输出格式,有效值: "TABLE"、"LIST"、"CSV"。
/NH 指定栏标头不应该在输出中显示。
只对 "TABLE" 和 "CSV" 格式有效。
1、使用“Tasklist”命令查看本机进程
运行“命令提示符”程序,在提示符窗口中输入:“tasklist”命令(图一),这样就显示本机的所有进程。本机的显示结果由五部分组成:图像名(进程名)、PID、会话名、会话#、内存使用。
2、查看远程系统的进程
在命令提示符下输入(图二):
“tasklist /s 218.22.123.26 /u jtdd /p 12345678”(不包括引号)
其中/s参数后的“218.22.123.26”指要查看的远程系统的IP地址,/u后的“jtdd”指tasklist命令使用的用户帐号,它是远程系统上的一个合法帐号,/p后的“12345678”指jtdd帐号的密码,。
这样,通过上面的命令,我们就可以查看到远程系统的进程了。
小提示:使用tasklist命令查看远程系统的进程时,需要远程机器的RPC 服务器的支
持,否则,该命令就不能正常使用。
3、查看系统进程提供的服务
tasklist命令不但可以查看系统进程,而且还可以查看每个进程提供的服务。
如查看本机的进程“SVCHOST.EXE”提供的服务,在命令提示符下输入:
“tasklist /svc”命令即可(图三),你会惊奇的发现,有四个“SVCHOST.EXE”进程,原来有二十几项服务使用这个进程,对于远程系统来说,查看系统服务也很简单,使用” tasklist /s 218.22.123.26 /u jtdd /p 12345678 /svc”命令,就可以查看IP地址为“218.22.123.26”的远程系统进程所提供的服务。
4、查看调用DLL模块文件的进程列表
例如,我们要查看本地系统中哪些进程调用了“shell32.dll” DLL模块文件。
(图四)在命令提示符下输入:
tasklist /m shell32.dll
这时系统将显示调用进程列表。
5、使用筛选器查找指定的进程
在命令提示符下输入:
“TASKLIST /FI "USERNAME ne NT AUTHORITY\SYSTEM" /FI "STATUS eq running“
这样就列出了系统中正在运行的非“SYSTEM“状态的所有进程(图五)。
其中“/FI“为筛选器参数,” ne“和”eq“为关系运算符”不相等“和”相等“。
补充:
谈到“Tasklist”命令,我们就不得不提它得孪生兄弟“taskkill”命令,顾名思义,它是用来杀死进程的。
如要杀死本机的“notepad.exe”进程。
首先,使用Tasklist查找它的PID,系统显示本机“notepad.exe”进程的PID值为“1132“,然后运行“taskkill /pid 1132”即可,或则运行” taskkill /IM notepad.exe“也可,
其中” /pid “参数后面跟要终止进程的PID值,“/IM“参数后面为进程的图像名。
“Tasklist”命令的用法还有很多,由于篇幅关系,就不详细介绍了,有兴趣的朋友可以参考有关技术资料,进行深入研究。
1、对TCP/IP协议的属性进行设置。
方法:右击“网上邻居”,选择“属性”,双击网卡对应的“TCP/IP协议”,选择“DNS”标签。设置如下:选中“启用DNS”;“主机”中填入服务器名称;并在下面的“DNS服务器搜索顺序”中填入服务器的IP地址,本例为“192.168.0.1”,然后单击[填加];单击[确定]结束DNS设置;再次单击[确定],结束对网络属性的设置。这时需要重新启动计算机。
2、重新启动后,右击桌面上的IE图标,选择“属性”。在接下来的“Internet属性”对话框中进行如下设置:选中“连接”标签;单击“局域网设置” 按钮;选中“使用代理服务器”;单击“高级”;在“服务器类型”中分别填入:HTTP为192.168.0.1,端口为808;FTP为 192.168.0.1,端口为2121;Socks为192.168.0.1,端口为1080;然后单击[确定]完成对IE的设置。
上网浏览
完成了上述的操作后,将服务器连接到因特网上,再启动CCProxy,学生机就可以通过IE自由在网际之间穿梭了,想要停止代理服务只需单击[停止]按钮即可。
备注
netstat -an
Netstat -tln 命令是用来查看linux的端口使用情况
/etc/init.d/vsftp start 是用来启动ftp端口~!
看文件/etc/services
netstat
查看已经连接的服务端口(ESTABLISHED)
netstat -a
查看所有的服务端口(LISTEN,ESTABLISHED)
sudo netstat -ap
查看所有的服务端口并显示对应的服务程序名
nmap <扫描类型><扫描参数>
例如:
nmap localhost
nmap -p 1024-65535 localhost
nmap -PT 192.168.1.127-245
当我们使用 netstat -apn 查看网络连接的时候,会发现很多类似下面的内容:
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 52 218.104.81.152:7710 211.100.39.250:29488 ESTABLISHED 6111/1
显示这台服务器开放了7710端口,那么这个端口属于哪个程序呢?我们可以使用 lsof -i :7710 命令来查询:
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
sshd 1990 root 3u IPv4 4836 TCP *:7710 (LISTEN)
这样,我们就知道了7710端口是属于sshd程序的。