欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 运维知识 > linux >内容正文

linux

【Linux】29.扫描本机同一局域网内 某端口开启 的主机

发布时间:2025/3/21 linux 146 豆豆
生活随笔 收集整理的这篇文章主要介绍了 【Linux】29.扫描本机同一局域网内 某端口开启 的主机 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

扫描本机同一局域网内 某端口开启 的主机

关于nc的用法可参考博客《nc之netcat端口测试与nmap工具》

链接: https://www.cnblogs.com/chuyiwang/p/7692005.html

用法:

(1) 新建一个shell脚本 search_ip_port.sh,内容见下面代码
(2)

sudo chmod +x search_ip_port.sh # 查找本机同一局域网内 开启了端口号80的主机 ./search_ip_port.sh 80 #!/bin/bash# 发现局域网内 某端口开启 的主机 # 端口检测使用nc# 用法 ./search_ip_port.sh 80 查找本机同一局域网内 开启了端口号80的主机# 判断是否安装了nc if ! type nc >/dev/null 2>&1; thenecho "检查初始化环境..."echo 'nc 未安装'sudo apt install -y netcat-traditionalsudo update-alternatives --config nc # 选择2 firet_ip=`ip a | grep inet | awk -F ' ' '{print $2}'` gateway=24for ip in $ret_ip; dotmp_ip=`echo $ip | awk -F '/' '{print $1}'`tmp_gateway=`echo $ip | awk -F '/' '{print $2}'`if test $[tmp_gateway] -eq $[gateway] thenecho "本机IP地址: $tmp_ip"echo "本机网关:$tmp_gateway"breakfi doneechoport=80if [ "$1" ]; thenport=$1 fi echo "开始查找本机同一局域网内的主机,端口号为: $port"lan_ip=`echo $tmp_ip | awk -F '.' '{print $1 "." $2 "." $3 "." }'` for (( i = 1; i < 255; i++ )); do{nc -zw2 ${lan_ip}$i $portif [ $? -eq 0 ]; thenecho "find host:${lan_ip}$i"fi} & done wait echo "查找完毕..."

总结

以上是生活随笔为你收集整理的【Linux】29.扫描本机同一局域网内 某端口开启 的主机的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。