Merge pull request #6 from etianl/master

This commit is contained in:
Robert Whitney
2023-01-06 04:34:50 -06:00
committed by GitHub
2 changed files with 5 additions and 3 deletions

View File

@@ -18,6 +18,7 @@ Run `node ./scanner.js [options] --ip <ip range>`
* `--min-players <count>` - Minimum number of players.
* `--max-players <count>` - Maximum player count.
* `--version <glob expression>` - Glob expression to filter version (eg- `1.19.*`, or `1.1*.*`). (Default: `*`)
* `--conc <howmany>` - How many concurrent connections to use for scanning. (Default is 256)
#### Output Options
* `--show-desc` - Enable showing of server description in output.
@@ -47,5 +48,5 @@ Run `node ./scanner.js [options] --ip <ip range>`
In this example it took `3.183` seconds to scan `255` IP addresses, and find `85` MineCraft servers. At this speed, a full `/16` (`123.45.0.0 - 123.45.255.255`) will take about `13.5` minutes to scan.
## Limitations
* Fails to scan more than a /16 without kicking the bucket... so you should probably stick to that or smaller ranges.
* Fails to scan more than a /10 without kicking the bucket... so you should probably stick to that or smaller ranges.
* Working on a Minecraft bot client... doesn't work though... you can see how badly it doesn't work by using `--enable-client` flag... it is totally broken. **Don't use it**.

View File

@@ -13,6 +13,7 @@ var SCAN_OPTS_HOSTS = (process.params['ip']||'0.0.0.0/0').toString();
var SCAN_OPTS_PORTS = (process.params['port'] || MINECRAFT_DEFAULT_PORT).toString();
var SCAN_OPTS_OUTPUT_CSV = (process.params['out']||null);
var SCAN_OPTS_VERSION_FILTER = (process.params['version']||'*');
var SCAN_OPTS_CONCURRENCY = (process.params['conc'] || 256);
var CLIENT_TOKEN;
if(process.params['geo-ip'])
@@ -88,14 +89,14 @@ if(process.params['enable-client'] && !process.params['client-token'])
});
}
console.log("Scanning ports " + SCAN_OPTS_PORTS + " on " + SCAN_OPTS_HOSTS);
console.log("Scanning ports " + SCAN_OPTS_PORTS + " on " + SCAN_OPTS_HOSTS + " with " + SCAN_OPTS_CONCURRENCY + " connections.");
var options = {
target: SCAN_OPTS_HOSTS,
port: SCAN_OPTS_PORTS,
states: 'O',
banner: false,
concurrency: 256
concurrency: SCAN_OPTS_CONCURRENCY
}
var scan = new Scanner(options);