您当前的位置: 首页 > 慢生活 > 程序人生 网站首页程序人生
使用netcat(nc)命令查看某个端口是否占用(打开)
发布时间:2021-11-21 18:06:53编辑:雪饮阅读()
一般的我们在linux上要查看一个端口是否被占用是通过如命令:netstat –anpt | grep 6379
这里是查看一个6379的端口是否被占用。
常见参数
-a (all)显示所有选项,默认不显示LISTEN相关
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。
-l 仅列出有在 Listen (监听) 的服務状态
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。
-l 仅列出有在 Listen (监听) 的服務状态
-p 显示建立相关链接的程序名
-r 显示路由信息,路由表
-e 显示扩展信息,例如uid等
-s 按各个协议进行统计
-c 每隔一个固定时间,执行该netstat命令。
-r 显示路由信息,路由表
-e 显示扩展信息,例如uid等
-s 按各个协议进行统计
-c 每隔一个固定时间,执行该netstat命令。
提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到
nc
那么有另外一个命令叫做nc,是属于netcat这个软件包的。
一般系统不自带,需要安装,那么如果用yum安装如:
[root@localhost ~]# yum install netcat
whersis查看这个netcat位置:
[root@localhost ~]# whereis netcat
netcat: /usr/bin/netcat /usr/share/man/man1/netcat.1.gz
所以我们可以这样查看一个端口占用:
[root@localhost ~]# /usr/bin/netcat -zvn -w 5 127.0.0.1 25
Connection to 127.0.0.1 25 port [tcp/*] succeeded!
也可以这样查看一个端口占用:
[root@localhost ~]# netcat -zvn -w 5 127.0.0.1 25
这里解释下这几个参数的作用:
-w
: 连接超时设置, 这里是最长5秒-z
: 仅报告连接状态.(Zero-I/O mode, report connection status only)-v
: 详细输出(verbose)-n
: 不要通过DNS解析主机名那么我们可以借助之前的netstat来验证下上面的netcat命令的检查结果:
[root@localhost ~]# netstat -anpt | grep 25
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1293/master
tcp 0 0 192.168.43.170:22 192.168.43.71:52513 ESTABLISHED 36497/sshd: root@no
tcp 0 0 192.168.43.170:22 192.168.43.71:52512 ESTABLISHED 36492/sshd: root@pt
tcp6 0 0 ::1:25 :::* LISTEN 1293/master
果然25端口是在的,是被占用的。
同样我们也可以再次来验证下6379端口占用,分别用netstat和netcat:
[root@localhost ~]# netstat -anpt | grep 6379
[root@localhost ~]# netcat -zvn -w 5 127.0.0.1 6379
netcat: connect to 127.0.0.1 port 6379 (tcp) failed: Connection refused
可以发现在某些方面netcat比netstat更好用,比如netstat好像是不支持指定主机名(ip),只能查看本机的端口开放情况。
关键字词:netcat,nc,端口占用,端口
上一篇:redis客户端命令
下一篇:redis管道(php实现)