亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Node.JS中快速掃描端口并發(fā)現(xiàn)局域網(wǎng)內(nèi)的Web服務器地址(80)

 更新時間:2017年09月18日 14:20:33   投稿:mrr  
在 Node.JS 中進行端口掃描還是比較方便的,一般會有廣播和輪詢兩種方式。下文重點給大家介紹node.js 掃描端口并發(fā)現(xiàn)局域網(wǎng)內(nèi)的web服務器地址的方法,一起看看吧

在 Node.JS 中進行端口掃描還是比較方便的,一般會有廣播和輪詢兩種方式。即使用廣播和掃描,使用廣播發(fā)出的消息有時會被路由器屏蔽,所以并不可靠。

使用node.js中的net模塊,可以直接嘗試向目錄主機的某個端口進行連接,如果能建立連接,則說明該地址存在服務器。

var socket = new Socket()
socket.connect(port, host)
socket.on('connect', function() {
 //找到port 和 host 地址
})

所以只要進行255次掃描,則可找到同一網(wǎng)段內(nèi)所有的Web服務器了。完整的示例代碼如下,使用Node.JS掃描的速度極快,幾秒內(nèi)即可完成掃描。

var net   = require('net')
var Socket = net.Socket
//待掃描的開始網(wǎng)段,可換成192.168.0
var ip   = '10.0.0'
var port  = 80
var scan = function(host, cb) {
 var socket = new Socket()
 var status = null
 socket.setTimeout(1500)
 socket.on('connect', function() {
  socket.end()
  cb && cb(null, host)
 })
 socket.on('timeout', function() {
  socket.destroy()
  cb && cb(new Error('timeout'), host)
 })
 socket.on('error', function(err) {
  cb && cb(err, host)
 })
 socket.on('close', function(err) {
 })
 socket.connect(port, host)
}
for(var i = 1; i <= 255; i++ ) {
 scan(ip+'.'+i, function(err, host) {
  if (err) {
   console.log('Not found', host)
   return
  }
  console.log("Found: ", host)
 })
}

輸出結(jié)果:

Found: 10.0.0.1
Found: 10.0.0.3
Not found 10.0.0.255
......

總結(jié)

以上所述是小編給大家介紹的Node.JS中快速掃描端口并發(fā)現(xiàn)局域網(wǎng)內(nèi)的Web服務器地址(80) ,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關文章

最新評論