NodeJS: Получаем все запущенные веб-сервера в локальной сети

  • четверг, 30 ноября 2017 г. в 09:02:00

Написал небольшой скрипт на NodeJS для поиска всех запущенных локальных веб-серверов с открытым портом 3000. Ничего сверхъестественного скрипт не делает. Просто пробегается по маске 192.168.X.X с портом 3000.

Использую только один пакет - request и метод HEAD, для получения только заголовка сервера.

Поиск идёт от 192.168.0.0 до 192.168.1.120.

Пытался использовать утилиту nmap, но к сожалению, требуемого результата получить не смог. Возможно, я не прочёл как следует документацию.

Ссылка на репозиторий: https://github.com/Archakov06/check-local-ip


_15
const request = require('request');
_15
_15
const check = (ip, port = 3000) =>
_15
request
_15
.head(`http://${ip}:${port}/`, { timeout: 500 })
_15
.on('response', function(response) {
_15
console.log(`http://${ip}:${port}/ - OK`);
_15
})
_15
.on('error', function(response) {});
_15
_15
for (var i = 0; i < 2; i++) {
_15
for (var o = 0; o < 120; o++) {
_15
check(`192.168.${i}.${o}`);
_15
}
_15
}