windows、Linux 测试服务器、电脑的某些个端口是否打开
测试远程端口是否开放包括两种方法:
一、 命令行的形式
二、代码
先参考我的博客 windows、Linux 开放端口
一、命令行的形式
两个命令:telnet、nc(netcat)
两种网络层协议:TCP、UDP
windows有telnet,只是默认没启动
windows10 配置telnet: http://www.xitongcheng.com/jiaocheng/win10_article_37554.html
windows7/8 server2008 配置telnet: https://jingyan.baidu.com/article/ae97a646b22fb6bbfd461d19.html
windows安装nc: https://blog.csdn.net/qq_37585545/article/details/82250984
下载:https://eternallybored.org/misc/netcat/
下载后,将nc的路径添加到环境变量Path中
centos/redhat 配置 telnet: sudo yum install telnet
ubuntu 配置 telnet: sudo apt install telnet
通常的Linux发行版中都带有NetCat(简称nc)
NetCat 官方地址:http://netcat.sourceforge.net/
centos/redhat 配置 nc: sudo yum install nc
ubuntu 配置 nc: sudo apt install nc
查看端口占用情况
Windows查看端口占用情况:https://jingyan.baidu.com/article/3c48dd34491d47e10be358b8.html
列出所有端口的情况:
netstat -ano 查看被占用端口对应的PID,输入命令:
netstat -aon|findstr ""
回车,记下最后一位数字,即PID,这里假设是2720。
继续输入
tasklist|findstr ""
回车,查看是哪个进程或者程序占用了2720端口
linux 查看端口占用情况:https://www.cnblogs.com/wangtao1993/p/6144183.html
lsof -i:端口号
用于查看某一端口的占用情况 netstat -tunlp |grep 端口号
用于查看指定的端口号的进程情况
如查看8000端口的情况: netstat -tunlp |grep 8000
远程端口是否打开测试
telnet的用法:
telnet只能测试TCP
telnet SERVER_IP port
example:
telnet localhost
nc的用法:
nc测试TCP:
nc -z SERVER_IP port
example:
nc -z 192.192.193.211 nc测试UDP
nc -uz SERVER_IP port
example:
nc -uz 192.192.193.211
二、代码
python代码:
import socket '''
这是多行注释,用三个单引号
该程序的功能是测试远程端口是否开放
python判断远程端口是否打开的方法
ssh默认端口 22
Windows远程登陆默认端口 3389
Oracle默认端口 1521
MySQL默认端口 3306
sqlserver默认端口 1433
''' sk = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sk.settimeout(1)
try:
sk.connect(('192.192.193.211',8080))
print('Server port 8080 OK!')
except Exception:
print('Server port 8080 not connect!')
sk.close()
windows10配置telnet
Win+R键调出 运行--》输入control,快速打开控制面板:
点击卸载程序,
点击启用或关闭Windows功能
在Telnet客户端打对勾,确定
测试是否启用Telnet, Win+R打开运行,输入cmd
在cmd中输入telnet测试。
最新文章
- Mongo DB Study: first face with mongo DB
- CoreJava知识点1
- 夺命雷公狗-----React---11--添加css样式的方法
- Android自定义遮罩层设计
- poj3295
- jquery 滑动动画
- SQL存储过程基于字段名传入的字符串拼接.
- 树莓派学习笔记——交叉编译练习之SQLite3安装
- redis hash结构 遍历某一个key下所有的(field,values)的方法
- a 标签的四种样式
- python urllib2与urllib
- FlappyBird Pygame
- 微信硬件平台(七)微信开发--如何存储并定时更新access_token
- ACM-ICPC 2018 南京赛区网络预赛 E AC Challenge(状压dp)
- PHP is_writeable 存在bug , 写一个自定函数 判断文件是否可写
- 【Mybatis】MyBatis对表执行CRUD操作(三)
- 【CF708D】Incorrect Flow 最小费用可行流
- Inside Triangle
- (线段树)Mayor's posters --poj -- 2528
- bzoj4385 &; POJ2015 Wilcze doły
热门文章
- HTTPS与HTTP
- bzoj 1579: [Usaco2009 Feb]Revamping Trails 道路升级 优先队列+dij
- php数据结构课程---4、栈(是什么)
- long long 与 __int64
- 有關WCF一個自認爲比較經典的博客
- vue2.0使用Sortable.js实现的拖拽功能
- Data URI Scheme,base64
- codeforces 653B B. Bear and Compressing(dfs)
- linux命令学习笔记(48):watch命令
- Android中的优化技巧