이 포트 스캐너를 작성했지만 정확하지 않습니다. 다음은이 스캐너 다른 달리기에노드에이 포트 스캐너가 정확한 결과를 제공하지 않는 이유는 무엇입니까?
- 에 대한 나의 관찰이 당신에게 다른 입술을 줄 수 있습니다 I 포트의 범위를 축소에 결과를 더 얻을 것으로 나타났습니다
- 여기
코드는 다음과 같습니다
const net = require('net')
function findPortStatus(port, host, timeout) {
return new Promise((resolve, reject) => {
const socket = net.createConnection(port, host,() => {
resolve(port)
socket.destroy()
})
socket.setTimeout(timeout,() => {
resolve('timeout')
socket.destroy()
})
socket.on('error', (err) => {
resolve('error')
})
})
}
const promises = []
for (let port = 1; port <= 65535; port++) {
promises.push(findPortStatus(port, process.argv[2], 10000))
}
Promise.all(promises)
.then(ports => {
for (let port of ports) {
if (typeof(port) === 'number') {
console.log(port)
}
}
})
코드에서 수동으로 범위를 변경하고 코드를 여러 번 실행 해보십시오. 당신이