• Stars
    star
    147
  • Rank 251,347 (Top 5 %)
  • Language
    Rust
  • License
    Other
  • Created over 1 year ago
  • Updated 8 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

silly minecraft server scanner

matscan

silly minecraft server scanner

matscan is heavily inspired by masscan, and like masscan contains its own tcp stack for maximum speed.

Features

  • Adaptive scanning (scans more than just the default port)
  • Works well even on relatively low scan rates and with lots of packet drops (running in production at ~70kpps and ~20% loss)
  • Can be run in a distributed fashion
  • Customizable rescanning (rescan servers with players online more often, etc)
  • Customizable target host, target port, protocol version
  • Send to a Discord webhook when a player joins/leaves a server
  • Detection of duplicate servers that have the same server on every port
  • Protocol implementation fingerprinting (can identify vanilla, paper, fabric, forge, bungeecord, velocity, node-minecraft-protocol)
  • Historical player tracking
  • Offline-mode detection
  • Written in Rust 🚀🚀🚀

Note

I highly encourage you to make your own server scanner instead of relying on someone else's code, I promise you'll have a lot more fun that way. Also if you do intend on using any of the code here, please read the license.

Usage

It is assumed that you know the basics of server scanning. Otherwise, I recommend reading the masscan readme and documentation. Also be aware that matscan only supports Linux, but you probably shouldn't be running it at home anyways.

Rename config.toml.example to config.toml and fill in the fields.

You'll also have to make a MongoDB database called mcscanner with two collections called servers and bad_servers. You should add a unique index for addr+port and a normal index for timestamp in the servers collection.

# Firewall port 61000 so your OS doesn't close the connections
# Note: You probably want to use something like iptables-persistent to save this across reboots
iptables -A INPUT -p tcp --dport 61000 -j DROP

# Run in release mode
cargo b -r && sudo ./target/release/matscan

You can also use the binary without the rest of the code as long as you put the config.toml and exclude.conf in the same directory as it.

More Repositories

1

azalea

A collection of Rust crates for making Minecraft bots, clients, and tools.
Rust
196
star
2

metasearch2

a cute metasearch engine
Rust
60
star
3

metasearch

A simple and useable metasearch engine.
TypeScript
22
star
4

repl-talk-api

Allows you to do various things with the slightly unofficial Repl.it Repl Talk API
Python
14
star
5

rust-image-host

An extremely simple image host.
Rust
11
star
6

mineflayer-baritone

Baritone in Mineflayer
JavaScript
11
star
7

forum-sweats

The Discord bot in the Forum Sweats server
Python
9
star
8

dreamsmp

HTML
6
star
9

hypixel-fake-chat

Python
5
star
10

matdoesdev

My blog and portfolio website.
Svelte
5
star
11

x227f

≿ is a web crawler for 88x31 buttons
Rust
5
star
12

msdsmchr

A fast Minecraft head API.
Rust
4
star
13

minecraft-asset-browser

Browse Minecraft assets in a web browser
Python
4
star
14

matdoesdev-old

https://matdoes.dev
Python
4
star
15

minecraft-packet-debugger

TypeScript
4
star
16

simdnbt

an unnecessarily fast nbt decoder
Rust
3
star
17

potato-bot-2

Rust
3
star
18

honeypot-mc-server

JavaScript
3
star
19

p0f

My fork of p0f with an extended database
C
3
star
20

skyblock-items-history

3
star
21

web-utils

Website with useful programming things.
Svelte
3
star
22

perfect_rand

A cipher for randomizing numbers in an arbitrary range.
Rust
3
star
23

repl-talk-bot

Bot used for the #repl-talk channel in the Repl.it Discord
Python
2
star
24

snooslash

Reddit TTS video generator
Python
2
star
25

Repl.it-dark-theme

Site-wide dark theme for Repl.it
CSS
2
star
26

visitorcount

basic old-school visitor counter for websites
Rust
1
star
27

i.matdoes.dev

Python
1
star
28

liveoverflow-potato-farm

TypeScript
1
star
29

imdedup

find and remove duplicate images in a directory
Rust
1
star
30

minecraft-bot-pvp-server

JavaScript
1
star
31

suntzu

Python
1
star
32

matdoesdev-protocols

Make matdoes.dev work on more than just HTTP
Rust
1
star
33

decompiled_minecraft_gen

Generate a Git repo with commits and branches with the decompiled source code of different Minecraft versions and mappings.
Rust
1
star