Velocity/Paper plugin that correlates player UUIDs, usernames, and IPs over time. Logs connection events with session durations and enriches records with local GeoIP data for moderation, security auditing, and ban-evasion investigation.
NamelessIPLogger is a Velocity and Paper plugin for moderation and security auditing. It builds historical correlations between player UUIDs, usernames, and IP addresses, logs connection activity, and enriches IP records with local GeoIP MMDB data. Player lookups are local; no per-player external API requests are made.
(Please see the GitHub README for the latest info; this description may lag behind slightly)
plugins/namelessiplogger/ for review, export, and external analysis.If you investigate ban evasion, alt accounts, account sharing, or suspicious activity, this plugin gives you fast historical identity/IP evidence for operational moderation workflows.
Two providers are supported through config.yml:
Databases are downloaded when needed, refreshed after the configured staleness interval, and can be forced immediately with /niplookup updatedb.
Commands are console-only by default. Set commands.allow-admin-permission: "true" to also allow players with namelessiplogger.admin to use them.
| Command | Description |
|---|---|
/niplookup uuid <uuid> |
Look up all data for a UUID |
/niplookup username <name> |
Look up all data for a username |
/niplookup ip <ip> |
Look up all data for an IP |
/niplookup reload |
Reload config without restarting the platform |
/niplookup updatedb |
Force immediate GeoIP database redownload |
/niplookup checkupdates |
Manually check GitHub Releases for a newer stable version |
Aliases: /niplog, /iplookup, /iplog
Additional subcommand aliases are also accepted: user, name, update-db, refreshdb, checkupdate, updatecheck, update-check, and updates.
This plugin can store UUIDs, usernames, IPs, connection timestamps, session durations, and optional GeoIP enrichment. Logging fields, TSV outputs, console output, retention, and player command access are configurable.
Outbound network activity is limited to:
/niplookup checkupdates is run.Telemetry does not send player UUIDs, usernames, player IPs, connection logs, or GeoIP data. It sends only a hashed local instance ID, UTC date, project name, and count. Set telemetry.enabled: "false" to disable it.
Treat stored identity/IP data as sensitive and set retention policies appropriate for your jurisdiction and server policy.
Nightly development builds are published automatically from the latest main or master branch changes, and can also be triggered manually.
https://github.com/NanashiTheNameless/NamelessIPLogger/releases/tag/nightly
Nightly builds are intended for testing and may change more frequently than stable versioned releases. Built-in update checks ignore prereleases and the nightly tag.