I'm sorry, but this is a terrible way to block VPNs, and if you are doing so you are making your server unfriendly to users of VPNs who do not have any malicious intent whatsoever.

Anti-VPN 6.4.13
Get the best; save money on overpriced plugins and block VPN users!
-
ratoid
- 1/5,
-
FredsonPL
- 3/5,
Blocks players who are not using a VPN.
After testing this plugin, I find that it blocks maybe 20% of VPNs.
Bypass permission is not working at all. -
NotWillbear
- 5/5,
Works and is very useful, love how it's free and does everything a paid plugin could do.
-
CancerSticks
- 3/5,
It's ok but it thinks I'm on a proxy, probably due to TCPShield. Also, I'm using luckperms.
-
nikolamintic312
- 1/5,
Terrible bypass permission doesnt even work.
Wrong VPN Detections and it spams my whole console. -
MesterDavid
- 5/5,
Very useful and perfect plugin!
Must have fog every cracked server!
Thanks you! <3 -
DejVIIK
- 4/5,
[12:03:51 ERROR]: Could not pass event AsyncPlayerPreLoginEvent to AntiVPN v6.4.13
[12:03:51 ERROR]: Suspected Plugins:
[12:03:51 ERROR]: Vault{enabled,ver=1.7.3-b131,path=plugins/Vault.jar}
[12:03:51 ERROR]: GroupManager{enabled,ver=2.9 (Phoenix),path=plugins/GroupManager.jar}
[12:03:51 ERROR]: AntiVPN{enabled,ver=6.4.13,path=plugins/antivpn-bukkit-6.4.13.jar}
[12:03:51 ERROR]: Exception details below:
java.lang.IllegalArgumentException: PartialName cannot be null
at org.apache.commons.lang.Validate.notNull(Validate.java:192) ~[1.16.5-patched.jar:git-Yatopia-ver/1.16.5-33]
at org.bukkit.craftbukkit.v1_16_R3.CraftServer.matchPlayer(CraftServer.java:591) ~[1.16.5-patched.jar:git-Yatopia-ver/1.16.5-33]
at org.anjocaido.groupmanager.dataholder.worlds.WorldsHolder.getWorldDataByPlayerName(WorldsHolder.java:520) ~[?:?]
at org.anjocaido.groupmanager.dataholder.worlds.WorldsHolder.getWorldPermissionsByPlayerName(WorldsHolder.java:570) ~[?:?]
at net.milkbowl.vault.permission.plugins.Permission_GroupManager.playerHas(Permission_GroupManager.java:101) ~[?:?]
at net.milkbowl.vault.permission.Permission.has(Permission.java:61) ~[?:?]
at net.milkbowl.vault.permission.Permission.playerHas(Permission.java:130) ~[?:?]
at me.egg82.antivpn.events.PlayerEvents.checkPerms(PlayerEvents.java:113) ~[?:?]
at me.egg82.antivpn.events.PlayerEvents$$Lambda$5890.0000000043A1C3B0.accept(Unknown Source) ~[?:?]
at me.egg82.antivpn.external.ninja.egg82.events.SingleEventSubscriber.call(SingleEventSubscriber.java:101) ~[?:?]
at me.egg82.antivpn.external.ninja.egg82.events.BukkitEventSubscriber.call(BukkitEventSubscriber.java:50) ~[?:?]
at me.egg82.antivpn.external.ninja.egg82.events.BukkitEventSubscriber.lambda$new$0(BukkitEventSubscriber.java:31) ~[?:?]
at me.egg82.antivpn.external.ninja.egg82.events.BukkitEventSubscriber$$Lambda$5888.0000000043A1B290.execute(Unknown Source) ~[?:?]
at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:76) ~[1.16.5-patched.jar:git-Yatopia-ver/1.16.5-33]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[1.16.5-patched.jar:git-Yatopia-ver/1.16.5-33]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:611) ~[1.16.5-patched.jar:git-Yatopia-ver/1.16.5-33]
at net.minecraft.server.v1_16_R3.LoginListener$LoginHandler.fireEvents(LoginListener.java:318) ~[1.16.5-patched.jar:git-Yatopia-ver/1.16.5-33]
at net.minecraft.server.v1_16_R3.LoginListener$1.run(LoginListener.java:210) ~[1.16.5-patched.jar:git-Yatopia-ver/1.16.5-33]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
at java.lang.Thread.run(Thread.java:825) [?:?] -
DogeTennant
- 2/5,
Gives too many false positives and the permission for bypass doesn't work, so this plugin is literally unusable for me. And before you say anything about LuckPerms, we are using that.
-
mkwwmka5
- 4/5,
[13:47:56 ERROR]: Error occurred while enabling AntiVPN v6.4.13 (Is it up to date?)
java.lang.NoClassDefFoundError: me/egg82/antivpn/external/me/gong/mcleaks/MCLeaksAPI
at me.egg82.antivpn.api.model.player.BukkitPlayerManager.<init>(BukkitPlayerManager.java:32) ~[?:?]
at me.egg82.antivpn.AntiVPN.loadServices(AntiVPN.java:240) ~[?:?]
at me.egg82.antivpn.AntiVPN.onEnable(AntiVPN.java:129) ~[?:?]
at me.egg82.antivpn.BukkitBootstrap.onEnable(BukkitBootstrap.java:93) ~[?:?]
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:321) ~[spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]
at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:340) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]
at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:405) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]
at org.bukkit.craftbukkit.v1_8_R3.CraftServer.loadPlugin(CraftServer.java:357) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]
at org.bukkit.craftbukkit.v1_8_R3.CraftServer.enablePlugins(CraftServer.java:317) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]
at net.minecraft.server.v1_8_R3.MinecraftServer.s(MinecraftServer.java:414) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]
at net.minecraft.server.v1_8_R3.MinecraftServer.k(MinecraftServer.java:378) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]
at net.minecraft.server.v1_8_R3.MinecraftServer.a(MinecraftServer.java:333) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]
at net.minecraft.server.v1_8_R3.DedicatedServer.init(DedicatedServer.java:263) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]
at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:525) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]
at java.base/java.lang.Thread.run(Thread.java:834) [?:?]
Caused by: java.lang.ClassNotFoundException: me.egg82.antivpn.external.me.gong.mcleaks.MCLeaksAPI
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:471) ~[?:?]
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:101) ~[spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:86) ~[spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:588) ~[?:?]
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521) ~[?:?]
... 15 more
How can i do -
chickenhunter256
- 1/5,
It's not working on paper 1.16.4 with java.lang.NoClassDefFoundError: me/egg82/antivpn/external/me/gong/mcleaks/MCLeaksAPI error
-
benjamonSRL
- 5/5,
"Detecting VPNs is an art of the blackest magic"
Honestly, you master it quite well-
Author's Response
Thank you for the review! Glad it's working for you.
-
servermine1605
- 5/5,
Very good plugin although it does not block all VPNs, some more complicated ones happen normally.
-
Author's Response
Thank you!
Detecting VPNs is an art of the blackest magic, and Anti-VPN relies on external APIs/sources to do that work. It will likely never be perfect, but you can tweak results if you find too many issues with the default setup. More information on that here: https://github.com/egg82/AntiVPN/wiki/FAQ#anti-vpn-is-kicking-players-wrongly--api-gives-bad-results
-
Schaumnificent
- 1/5,
The bypass perm doesn't work, it seems like this will never be fixed. We can't use it this way. It blocks vpns and even mcleaks which we like, but this is a major problem.
-
Author's Response
Thank you for the review!
I would recommend trying a modern permissions plugin such as LuckPerms. Anti-VPN uses a well-known and stable API for determining player permissions (introduced in 1.6 or 1.7, I believe), and some older/defunct permissions plugins don't seem to handle that system well.
-
benjamonSRL
- 5/5,
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
---------------------------------------------
[ Very nice ]
---------------------------------------------
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬-
Author's Response
Thank you!
-
trhi2409
- 2/5,
Doin the work but i got ram leaks from this plugin..
used 18 - 20gb ram and it leaks all of it-
Author's Response
Thanks for the review!
Although I've profiled the plugin numerous times I was unable to find any sort of memory leak, and because memory management is handled by the JVM it seems unlikely that there would be any. If you can, please create an issue on the project page here: https://github.com/egg82/AntiVPN/issues
-
theking188
- 2/5,
It blocks basic VPNS like nordVPN,
But I found a FREE bypassing one (tunnelbear)-
Author's Response
Thank you for the review!
Anti-VPN uses various sources to determine whether or not a particular IP is a VPN. An explanation on how that works and how to adjust those settings is available on the wiki here: https://github.com/egg82/AntiVPN/wiki/FAQ#Sources
-
Porkchop
- 4/5,
Really nice, but is extremely strict at times, also can't find an option to change the disconnect message anywhere.
-
Author's Response
Thanks for the review!
You can change the messages in the config. The wiki for that is available here: https://github.com/egg82/AntiVPN/wiki/Configuration#Action
-
PaintersDaughter
- 3/5,
Blocks VPNs like a charm. However, the bypass permission doesn't seem to work at all. I've been trying to use it to bypass my Co-Owners and higher admins but it's still refusing to bypass them. Hopefully it'll be fixed in an update.
-
Author's Response
Thank you for the review!
I would recommend trying a modern permissions system such as LuckPerms. Older, defunct permissions systems are known to cause issues with plugins that use standard permissions APIs.
-
KlausNein
- 5/5,
Thanks for this plugin. You are a great person! :) You create such a important and good plugin and do not even want money for it. Thank you very much. Everything works and the Kiddies cant troll us anymore with their Alts and VPNS. <3 <3 <3 Thx
-
Author's Response
Thank you for the review! I'm glad everything is working out for you so far.
-
tdubz
- 4/5,
Good plugin, very good at detecting VPNs however bypass permissions do not work for some reason. ;(
-
Author's Response
Thanks for the review!
If you're having trouble with permissions, I recommend trying a modern permissions system such as LuckPerms. Although Anti-VPN uses standard APIs for permissions checks, it's been known that older/defunct permissions plugins don't lend themselves well to other plugins.
Page 1 of 4