91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Node.JS中如何快速掃描端口并發現局域網內的Web服務器地址

發布時間:2021-09-15 11:05:29 來源:億速云 閱讀:654 作者:柒染 欄目:web開發

這篇文章將為大家詳細講解有關Node.JS中如何快速掃描端口并發現局域網內的Web服務器地址,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

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

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

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

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

var net   = require('net')
var Socket = net.Socket
//待掃描的開始網段,可換成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)
 })
}

輸出結果:

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

關于Node.JS中如何快速掃描端口并發現局域網內的Web服務器地址就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

来宾市| 邵武市| 珠海市| 察哈| 江安县| 鲁甸县| 龙岩市| 娱乐| 上饶县| 定南县| 班玛县| 泾阳县| 修武县| 海兴县| 原阳县| 萨迦县| 蛟河市| 南康市| 阿尔山市| 哈巴河县| 安平县| 祁门县| 蒙阴县| 会同县| 修文县| 甘洛县| 文登市| 定陶县| 宿迁市| 东城区| 革吉县| 新密市| 和龙市| 鄂托克前旗| 南郑县| 大冶市| 东山县| 措勤县| 汉川市| 吴桥县| 蒙自县|