1.0.1latestIP Ban Plugin 1.0.1Jan 1, 2026 Added
- JSON Storage: Replaced SQLite with a lightweight JSON-based storage system. - Async I/O: All file operations (save/load) are now performed asynchronously to prevent server lag. - Cyrillic Support: Enforced UTF-8 encoding formessages.propertiesandbanned_ips.jsonto correctly handle Cyrillic characters in ban reasons and messages.Changed
- Plugin ID: Renamed plugin ID toipbanpluginand main class toIPBanPlugin. - Dependency Removal: Removedsqlite-jdbcdependency to drastically reduce file size. - File Size: Optimized plugin size from ~13MB to ~350KB. - Velocity API: Updated to target Velocity 3.4.0-SNAPSHOT.Fixed
- Encoding Issues: Fixed issues where Cyrillic characters might appear as question marks or garbage text. - Java 9+ Compatibility: Removed complex classloader hacks required for SQLite, ensuring better compatibility with modern Java versions (Java 17+).1.0.0IP Ban Plugin 1.0.0Jul 6, 2025 Velocity IP Ban Plugin
   Created by Yunexal Labs - A simple and efficient IP banning plugin for Velocity proxy servers
Velocity IP Ban Plugin is a lightweight yet powerful solution for managing IP bans on Velocity proxy servers. The plugin provides instant IP blocking, automatic online player kicking, and support for multiple IP management - all without unnecessary complexity.Overview
-Features
Instant IP Blocking - Blocks banned IP addresses before players can connect to any backend server -
Multiple IP Support - Ban or unban multiple IP addresses with a single command -
Online Player Kicking - Automatically kicks players when their IP gets banned while they're online -
Statistics Integration - Built-in bStats integration for usage analytics -
Colored Messages - Beautiful colored console output and player messages -
SQLite Database - Lightweight, serverless database storage -
Simple Configuration - Minimal setup required -
No Dependencies - Works out of the box with just Velocity
1. Download the latestInstallation
velocity-ip-ban-1.0.0.jarfrom releases 2. Place the JAR file in your Velocity server'spluginsfolder 3. Restart your Velocity server 4. The plugin will automatically create configuration files on first runCommands
Permission:/ipban- Ban IP Addressesvelocityipban.banAliases:/banip#### Usage Examples:# Show list of all banned IPs /ipban # Ban a single IP address /ipban 192.168.1.100 # Ban multiple IP addresses at once /ipban 192.168.1.100 10.0.0.50 172.16.0.10 # Mix valid and invalid IPs (invalid ones will be skipped with warnings) /ipban 192.168.1.100 invalid.ip 10.0.0.50
Permission:/unbanip- Unban IP Addressesvelocityipban.unbanAliases:/unban-ip#### Usage Examples:# Unban a single IP address /unbanip 192.168.1.100 # Unban multiple IP addresses at once /unbanip 192.168.1.100 10.0.0.50 172.16.0.10Configuration
config.yml
# Velocity IP Ban Plugin Configuration # Created by Yunexal Labs # # A simple and efficient IP banning system for Velocity proxy servers # Database settings database: type: "sqlite" sqlite: file: "banned_ips.db" # Debug mode debug: falsemessages.properties
All plugin messages are customizable through themessages.propertiesfile:# Ban messages ban.message=&cYour IP has been parked by Yunexal Autonomous Security. Appeal is not possible. Skill issue? ban.kick_online=&cYour IP has been banned while you were online. Reconnection is not possible. ban.success=&aSuccessfully banned IP: &f{ip} ban.success_multiple=&aSuccessfully banned &f{count} &aIPs: &f{ips} ban.already=&cIP {ip} is already banned ban.some_already=&eWarning: Some IPs were already banned: &f{already_banned} # Unban messages unban.success=&aSuccessfully unbanned IP: &f{ip} unban.success_multiple=&aSuccessfully unbanned &f{count} &aIPs: &f{ips} unban.not_banned=&cIP {ip} is not banned unban.some_not_banned=&eWarning: Some IPs were not banned: &f{not_banned} # List messages list.header=&6=== Banned IPs === list.entry=&7{ip} &8- &fbanned by &f{banned_by} list.empty=&7No IPs are currently banned # Error messages error.invalid_ip=&cInvalid IP address format: &f{ip} error.no_permission=&cYou don't have permission to use this command error.database=&cDatabase error occurred. Check console for details. # Usage messages usage.ipban=&cUsage: &f/ipban &7[show list] &f| &f/ipban <ip1> [ip2] [ip3] ... usage.unbanip=&cUsage: &f/unbanip <ip1> [ip2] [ip3] ...
| Permission | Description | Default | |------------|-------------|---------| |Permissions
velocityipban.ban| Allows using/ipbancommand |op| |velocityipban.unban| Allows using/unbanipcommand |op|
The plugin uses a simple SQLite database with the following structure:Database Schema
CREATE TABLE banned_ips ( id INTEGER PRIMARY KEY AUTOINCREMENT, ip_address TEXT NOT NULL UNIQUE, banned_by TEXT NOT NULL, banned_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP );
1. Connection Blocking: When a player tries to connect, the plugin checks their IP against the database during theHow It Works
PreLoginEvent2. Multiple IP Management: Commands support space-separated IP addresses for bulk operations 3. Online Player Kicking: When an IP is banned, all online players with that IP are immediately disconnected 4. Validation: All IP addresses are validated before processing, with detailed error messages for invalid formats 5. Async Operations: All database operations are performed asynchronously to prevent server lag
- Lightweight: ~14MB JAR file with all dependencies included - Fast: Async database operations prevent server blocking - Efficient: Uses connection pooling with HikariCP - Scalable: SQLite database handles thousands of banned IPs efficiently Made with ❤️ by Yunexal LabsPerformance
Similar projects
Plugin →VeinMiner
Mine the whole vein on mining a single ore/block. Make the tedious mining experience to something satisfying and fun! FTB Ultimine alternative
99.3MSueta
Simple Voice Chat
A working voice chat in Minecraft!
76.8MSueta
Chunky
Pre-generates chunks, quickly and efficiently
18.4MSueta
VeinMiner Enchantment
Veinminer Addon - Adds vineminer enchantment to enchanting tables. Only tools with the enchantment can veinmine
18MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
WorldEdit
A Minecraft Map Editor... that runs in-game! With selections, schematics, copy and paste, brushes, and scripting. Use it in creative, or use it temporarily in survival.
11.6MSueta