andylizi 发表于 2020-8-27 22:25
它这个的问题跟 ProtocolLib 类似,很难直接用反射处理。
但我再次看 ProtocolLib 的代码时突然想到了新 ...
你这个更新速度快的有点离谱…… 所以如果用在spigot上时,还需要单独找个让spigot兼容proxy protocol的插件吗,还是说你已经把这功能包含进去了
SkyCatcher 发表于 2020-8-27 22:31
你这个更新速度快的有点离谱…… 所以如果用在spigot上时,还需要单独找个让spigot兼容proxy protocol的 ...
你这个更新速度快的有点离谱
嗯包含进去了。他这个 SpigotProxy 的代码写的……一言难尽。虽然用了一些反射但各种成员名称还是硬编码的,有些地方干脆反射都不用了,不知道能兼容到哪个版本…有些调试用的日志输出甚至都没删……
其实技术难点主要在新连接的 pipeline 初始化时能够截获并注入自己的 handler,只要这一点能实现剩下都好办,毕竟代理的协议支持是 netty 自带的。
这插件一看就好强 但是暂时还看不懂到底起到了什么作用。。
这……这算是诈尸吗
上次见你还是不知道几年前的ColorMotd、SuperBan那会儿
上次见你还是不知道几年前的ColorMotd、SuperBan那会儿
楼主nb,有了这个配合我的prism能在实现单端口多服分流的情况下还能获取原始用户ip
**兹磁!
**兹磁!
本帖最后由 迷离丶不羁 于 2020-11-23 13:46 编辑
您好,请问frp开启之后服务端报错是什么原因呢服务端为Mohist 1.12.2
报错如下:
[13:32:26 WARN]: [HAProxyDetector] Exception while detecting proxy
java.util.NoSuchElementException: haproxy-decoder
at io.netty.channel.DefaultChannelPipeline.getContextOrDie(DefaultChannelPipeline.java:1080) ~[DefaultChannelPipeline.class:?]
at io.netty.channel.DefaultChannelPipeline.addAfter(DefaultChannelPipeline.java:311) ~[DefaultChannelPipeline.class:?]
at io.netty.channel.DefaultChannelPipeline.addAfter(DefaultChannelPipeline.java:299) ~[DefaultChannelPipeline.class:?]
at net.andylizi.haproxydetector.HAProxyDetectorHandler.decode(HAProxyDetectorHandler.java:69) [haproxy-detector-2.0.jar:?]
at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:411) [ByteToMessageDecoder.class:?]
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:248) [ByteToMessageDecoder.class:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [AbstractChannelHandlerContext.class:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [AbstractChannelHandlerContext.class:?]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [AbstractChannelHandlerContext.class:?]
at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:287) [IdleStateHandler.class:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [AbstractChannelHandlerContext.class:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [AbstractChannelHandlerContext.class:?]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [AbstractChannelHandlerContext.class:?]
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1334) [DefaultChannelPipeline$HeadContext.class:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [AbstractChannelHandlerContext.class:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [AbstractChannelHandlerContext.class:?]
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:926) [DefaultChannelPipeline.class:?]
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:134) [AbstractNioByteChannel$NioByteUnsafe.class:?]
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:624) [NioEventLoop.class:?]
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:559) [NioEventLoop.class:?]
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:476) [NioEventLoop.class:?]
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:438) [NioEventLoop.class:?]
at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858) [SingleThreadEventExecutor$5.class:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_201]
您好,请问frp开启之后服务端报错是什么原因呢服务端为Mohist 1.12.2
报错如下:
[13:32:26 WARN]: [HAProxyDetector] Exception while detecting proxy
java.util.NoSuchElementException: haproxy-decoder
at io.netty.channel.DefaultChannelPipeline.getContextOrDie(DefaultChannelPipeline.java:1080) ~[DefaultChannelPipeline.class:?]
at io.netty.channel.DefaultChannelPipeline.addAfter(DefaultChannelPipeline.java:311) ~[DefaultChannelPipeline.class:?]
at io.netty.channel.DefaultChannelPipeline.addAfter(DefaultChannelPipeline.java:299) ~[DefaultChannelPipeline.class:?]
at net.andylizi.haproxydetector.HAProxyDetectorHandler.decode(HAProxyDetectorHandler.java:69) [haproxy-detector-2.0.jar:?]
at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:411) [ByteToMessageDecoder.class:?]
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:248) [ByteToMessageDecoder.class:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [AbstractChannelHandlerContext.class:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [AbstractChannelHandlerContext.class:?]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [AbstractChannelHandlerContext.class:?]
at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:287) [IdleStateHandler.class:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [AbstractChannelHandlerContext.class:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [AbstractChannelHandlerContext.class:?]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [AbstractChannelHandlerContext.class:?]
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1334) [DefaultChannelPipeline$HeadContext.class:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [AbstractChannelHandlerContext.class:?]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [AbstractChannelHandlerContext.class:?]
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:926) [DefaultChannelPipeline.class:?]
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:134) [AbstractNioByteChannel$NioByteUnsafe.class:?]
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:624) [NioEventLoop.class:?]
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:559) [NioEventLoop.class:?]
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:476) [NioEventLoop.class:?]
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:438) [NioEventLoop.class:?]
at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858) [SingleThreadEventExecutor$5.class:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_201]
迷离丶不羁 发表于 2020-11-23 13:43
您好,请问frp开启之后服务端报错是什么原因呢服务端为Mohist 1.12.2
报错如下:
mod 服应该是不支持的,对底层逻辑的修改太多了。这个没什么好办法能解决
本帖最后由 逆天域 于 2021-1-12 18:44 编辑
所以还是找不到让基岩服务器接收真实IP的方法=-=
所以还是找不到让基岩服务器接收真实IP的方法=-=
这个是用来干嘛的.看着有点懵逼
好人,正需要,是不是可以替代frp
感谢dalao分享
已经在尝试了

已经在尝试了
给份基础haproxy配置吧,求求了
支持楼主!正好需要,良心
子服要安装这插件吗
感谢作者制作和分享这么好的插件
其实出这类的东西我都觉得应该出个教程,毕竟我BC游戏内连接都还没搞明白,虽然说你们都说插件简单插件简单,但是一个教程都没说,就是好处是什么...
牛逼!!!Mohist1.16.5+frp完美获取了真实IP!!!大梨子牛逼!!
非常喜欢这个插件 解决了authme 穿透服无真实ip的登录问题
求更新支持1.18!
求更新支持1.18!
我不是ZN 发表于 2021-12-6 19:29
非常喜欢这个插件 解决了authme 穿透服无真实ip的登录问题
求更新支持1.18! ...
唔,你试过它不支持 1.18 吗?有没有报错信息什么的
来波教程岂不美哉
感谢分享.插件正好需要!
您好,用了https://github.com/games647/FastLogin之后会失效()可以的话能排查一下吗(虽然我知道大概率是那个插件的问题
什么时候支持nps?
本帖最后由 Ayamuta 于 2022-3-12 15:22 编辑
waterfall
客户端卡在 登陆中 界面
bc的信息
复制代码
waterfall
客户端卡在 登陆中 界面
bc的信息
- [Netty Worker IO Thread #3/WARN] [io.netty.util.concurrent.AbstractEventExecutor]: A task raised an exception. Task: net.md_5.bungee.connection.InitialHandler$6$1@7d477f1d
- java.lang.Error: Method became inaccessible: PostLoginEvent(player=Ayamuta)
- at net.md_5.bungee.event.EventBus.post(EventBus.java:53) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- at net.md_5.bungee.api.plugin.PluginManager.callEvent(PluginManager.java:466) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- at net.md_5.bungee.connection.InitialHandler$6$1.run(InitialHandler.java:550) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:469) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- at java.lang.Thread.run(Unknown Source) [?:?]
- Caused by: java.lang.IllegalAccessException: class net.md_5.bungee.event.EventHandlerMethod cannot access a member of class net.andylizi.haproxydetector.bungee.BungeeMain$1TrackingStatsListener with modifiers "public"
- at jdk.internal.reflect.Reflection.newIllegalAccessException(Unknown Source) ~[?:?]
- at java.lang.reflect.AccessibleObject.checkAccess(Unknown Source) ~[?:?]
- at java.lang.reflect.Method.invoke(Unknown Source) ~[?:?]
- at net.md_5.bungee.event.EventHandlerMethod.invoke(EventHandlerMethod.java:19) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- at net.md_5.bungee.event.EventBus.post(EventBus.java:50) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- ... 8 more
- [07:49:59] [Netty Worker IO Thread #7/INFO]: [/180.233.233.233:1603] <-> InitialHandler has connected
- [07:49:59] [Netty Worker IO Thread #8/INFO]: [/219.233.233.233:39803] <-> InitialHandler has connected
- [07:49:59] [Netty Worker IO Thread #8/WARN] [io.netty.util.concurrent.AbstractEventExecutor]: A task raised an exception. Task: net.md_5.bungee.connection.InitialHandler$6$1@4abdf866
- java.lang.Error: Method became inaccessible: PostLoginEvent(player=JK_CAT)
- at net.md_5.bungee.event.EventBus.post(EventBus.java:53) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- at net.md_5.bungee.api.plugin.PluginManager.callEvent(PluginManager.java:466) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- at net.md_5.bungee.connection.InitialHandler$6$1.run(InitialHandler.java:550) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:469) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- at java.lang.Thread.run(Unknown Source) [?:?]
- Caused by: java.lang.IllegalAccessException: class net.md_5.bungee.event.EventHandlerMethod cannot access a member of class net.andylizi.haproxydetector.bungee.BungeeMain$1TrackingStatsListener with modifiers "public"
- at jdk.internal.reflect.Reflection.newIllegalAccessException(Unknown Source) ~[?:?]
- at java.lang.reflect.AccessibleObject.checkAccess(Unknown Source) ~[?:?]
- at java.lang.reflect.Method.invoke(Unknown Source) ~[?:?]
- at net.md_5.bungee.event.EventHandlerMethod.invoke(EventHandlerMethod.java:19) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- at net.md_5.bungee.event.EventBus.post(EventBus.java:50) ~[waterfall-1.18-480.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:e767b40:480]
- ... 8 more
MCBBS有你更精彩~
Ayamuta 发表于 2022-3-6 10:56
waterfall
客户端卡在 登陆中 界面
bc的信息
感谢反馈,新版本已修复(v3.0.1)
很不错的插件支持作者加油!
感谢楼主分享
那么压测的话,还是压测的bc吗
本帖最后由 梦彡星魂 于 2022-8-9 16:58 编辑
开启代理,插件也装了,但是直连仍然无法连接是什么情况...版本1.18.2 无报错QAQ
追加编辑:用的Paper核心,才看到下面的回复,注意到最新版本支持Spigot且包含proxy protocol协议,但是我在paper.yml也打开了代理转发的功能,猜测与这一设置有冲突导致直连失败,准备测试
开启代理,插件也装了,但是直连仍然无法连接是什么情况...版本1.18.2 无报错QAQ
追加编辑:用的Paper核心,才看到下面的回复,注意到最新版本支持Spigot且包含proxy protocol协议,但是我在paper.yml也打开了代理转发的功能,猜测与这一设置有冲突导致直连失败,准备测试
是不是还没支持1.19
梦彡星魂 发表于 2022-8-9 16:13
开启代理,插件也装了,但是直连仍然无法连接是什么情况...版本1.18.2 无报错QAQ
追加编辑:用的Paper核心 ...
我也有同样的问题,不知道你测试的怎么样了,求结果
MinecraftHT 发表于 2022-8-15 22:38
我也有同样的问题,不知道你测试的怎么样了,求结果
1.检查Protocolib插件的版本,最新版似乎不兼容
2.paper配置文件关闭protocol协议
我是paper1.19 开启代理 安装插件后 请问如果需要允许的ip不在同一网段怎么办呢
MinecraftHT 发表于 2022-8-16 19:09
我是paper1.19 开启代理 安装插件后 请问如果需要允许的ip不在同一网段怎么办呢 ...
可以添加多个不同的网段嘛?就像这样
- 103.21.244.0/22
- 103.22.200.0/22
- 103.31.4.0/22
- 104.16.0.0/13
- 104.24.0.0/14
- 108.162.192.0/18
- 131.0.72.0/22
andylizi 发表于 2022-8-22 14:17
可以添加多个不同的网段嘛?就像这样
那没事了(可能是我配置出错了
作者无敌牛,但是插件能支持1.7就好啦
为什么spigot.yml 的 bungeecord 选项改成true之后,连接服务器还是显示If you wish to use IP forwarding, please enable it in your BungeeCord config as well!
真的是好插件,支持原创作者,MCBBS有你更精彩~
请问能支持1.7.10嘛
可以,很强大!
我不是ZN 发表于 2021-12-6 19:29
非常喜欢这个插件 解决了authme 穿透服无真实ip的登录问题
求更新支持1.18! ...
大佬可以分享一下吗,我也想用,能不能教一下
我不是ZN 发表于 2021-12-6 19:29
非常喜欢这个插件 解决了authme 穿透服无真实ip的登录问题
求更新支持1.18! ...
可以的话加个qq 3417489449
spigot端开启bungeecord: true后无法进服 If you wish to use IP forwarding, please enable it in your BungeeCord config as well!
不错不错awa
waterfall-1.19-510
配置文件出来了但是报错退出了
复制代码
配置文件出来了但是报错退出了
- [15:19:01 WARN]: Exception encountered when loading plugin: HAProxyDetector
- java.lang.InternalError: java.lang.IllegalAccessException: static final field has no write access: net.md_5.bungee.netty.PipelineUtils.SERVER_CHILD/io.netty.channel.ChannelInitializer/putStatic, from class java.lang.Object (module java.base)
- at jdk.internal.reflect.MethodHandleAccessorFactory.newFieldAccessor(Unknown Source) ~[?:?]
- at jdk.internal.reflect.ReflectionFactory.newFieldAccessor(Unknown Source) ~[?:?]
- at java.lang.reflect.Field.acquireOverrideFieldAccessor(Unknown Source) ~[?:?]
- at java.lang.reflect.Field.getOverrideFieldAccessor(Unknown Source) ~[?:?]
- at java.lang.reflect.Field.get(Unknown Source) ~[?:?]
- at net.andylizi.haproxydetector.bungee.BungeeMain.onEnable(BungeeMain.java:102) ~[?:?]
- at net.md_5.bungee.api.plugin.PluginManager.enablePlugins(PluginManager.java:315) ~[waterfall-1.19-510.jar:git:Waterfall-Bootstrap:1.19-R0.1-SNAPSHOT:13085b9:510]
- at net.md_5.bungee.BungeeCord.start(BungeeCord.java:299) ~[waterfall-1.19-510.jar:git:Waterfall-Bootstrap:1.19-R0.1-SNAPSHOT:13085b9:510]
- at net.md_5.bungee.BungeeCordLauncher.main(BungeeCordLauncher.java:67) ~[waterfall-1.19-510.jar:git:Waterfall-Bootstrap:1.19-R0.1-SNAPSHOT:13085b9:510]
- at net.md_5.bungee.Bootstrap.main(Bootstrap.java:15) ~[waterfall-1.19-510.jar:git:Waterfall-Bootstrap:1.19-R0.1-SNAPSHOT:13085b9:510]
- Caused by: java.lang.IllegalAccessException: static final field has no write access: net.md_5.bungee.netty.PipelineUtils.SERVER_CHILD/io.netty.channel.ChannelInitializer/putStatic, from class java.lang.Object (module java.base)
- at java.lang.invoke.MemberName.makeAccessException(Unknown Source) ~[?:?]
- at java.lang.invoke.MethodHandles$Lookup.unreflectField(Unknown Source) ~[?:?]
- at java.lang.invoke.MethodHandles$Lookup.unreflectSetter(Unknown Source) ~[?:?]
- at java.lang.invoke.MethodHandleImpl$1.unreflectField(Unknown Source) ~[?:?]
- ... 10 more
春节里的走马灯 发表于 2022-12-21 19:22
spigot端开启bungeecord: true后无法进服 If you wish to use IP forwarding, please enable it in your Bu ...
请在BC配置文件 config.yml 里将 ip_forward 设为 true
小吕先生2007 发表于 2023-1-11 15:23
waterfall-1.19-510
配置文件出来了但是报错退出了
这个问题我很早就在 v3.0.2 修复了,但是忘记在 mcbbs 发布新版本了……请更新到最新版
很好的插件,怎么就被封了呢。支持一下!
看到这个作者的头像 好熟悉啊 是不是之前发motd那个 好怀念