ruby用socket扫描端口

简介: require 'socket'   include Socket::Constants       def scan_port      if $*[0] == nil or $*[1] == nil or $*[2] == nil       abort "用法示例:rub...
  1. require 'socket'  
  2. include Socket::Constants   
  3.   
  4. def scan_port   
  5.   if $*[0] == nil or $*[1] == nil or $*[2] == nil  
  6.     abort "用法示例:ruby #$0 ip地址 开始端口 结束端口 EX:如ruby #$0 localhost 1 1024"  
  7.   end  
  8.   time = Time.now   
  9.   scan $*[0], $*[1], $*[2]   
  10.   puts "\n共耗时:#{Time.now - time}秒"  
  11. end  
  12.   
  13. private   
  14. def scan(address, start_port, end_port)   
  15.   threads = []   
  16.   for port in start_port..end_port   
  17.     threads << Thread.new(port) do |theport|   
  18.       begin  
  19.         socket = Socket.new(AF_INET, SOCK_STREAM, 0) #生成新的套接字   
  20.         sockaddr = Socket.pack_sockaddr_in(theport, address)   
  21.         socket.connect(sockaddr)   
  22.         puts "Port:#{theport} is Opend!\n"  
  23.         socket.close   
  24.       rescue  
  25.       end  
  26.     end  
  27.   end  
  28.   threads.each {|thr| thr.join}   
  29. end  
相关文章
|
1月前
|
网络安全 Python
Python编程--目标IP地址段主机指定端口状态扫描
Python编程--目标IP地址段主机指定端口状态扫描
|
2月前
|
Linux Python
用python扫描linux开放的端口(3种方式)
这篇文章介绍了三种使用Python实现Linux端口扫描的方法,包括基础版端口扫描、全端口扫描和多线程扫描技术。
58 15
|
2月前
|
监控 网络协议 数据库连接
Python3 监控端口:使用 socket 库
Python3 监控端口:使用 socket 库
|
2月前
|
监控 网络协议 数据库连接
Python3 监控端口:使用 socket 库
Python3 监控端口:使用 socket 库
|
3月前
|
网络安全 网络架构
Nmap扫描六种端口状态介绍
Nmap扫描六种端口状态介绍
96 2
|
2月前
|
存储 网络协议 安全
C语言 网络编程(五)Socket和端口
Socket 是 TCP/IP 五层网络模型中应用层的编程接口,用于实现不同主机间应用程序的双向通信。它作为网络通信的端点,连接应用层与网络协议栈,提供可靠的流式或非流式数据传输服务。Socket 包括流式(SOCKET_STREAM)、数据报(SOCK_DGRAM)和原始套接字(SOCK_RAW)三种类型,分别适用于不同场景。通过 IP 地址和端口号,Socket 能准确识别并转发数据包至指定进程。端口号分为知名端口(1-1023)、注册端口(1024-49151)和动态端口(49152-65535),确保数据准确交付。
|
5月前
|
Java Android开发
Java Socket编程示例:服务器开启在8080端口监听,接收客户端连接并打印消息。
【6月更文挑战第23天】 Java Socket编程示例:服务器开启在8080端口监听,接收客户端连接并打印消息。客户端连接服务器,发送&quot;Hello, Server!&quot;后关闭。注意Android中需避免主线程进行网络操作。
99 4
|
6月前
|
网络协议 Java
Java中如何使用Socket类检测端口是否存在
Java中如何使用Socket类检测端口是否存在
106 4
|
6月前
|
安全 程序员
|
6月前
扫描端口nc
扫描端口nc
33 0

热门文章

最新文章