求助大牛:不同网络环境下,mina服务器端收不到数据

发布于 2021-11-07 00:37:54 字数 280 浏览 857 评论 6

最近在做一个文件传输的项目用到mina框架,碰到一个很诡异的问题,在我们这边的网络环境下连接公网的服务器收发数据都没有问题。但是在别人的网络环境下连接服务器,能连接上,但是发送数据,服务器一个也收不到,用log4j可以看到客户端的连接已经建立而且数据已经发送出去,服务器端也显示了连接建立Created和Session Opened,但是数据就是收不到。一开始怀疑是他们家里机器的问题,但是用一台在我们这边能正常收发数据的机器放到他们家里也不行,后来怀疑是他们网络的问题,但是用普通的FTP工具他们家里能正常收发数据,我们的程序走的也是21端口。请大牛帮忙啊~

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

兮颜 2021-11-08 22:17:12

原因多种

1:防火墙检查包是不是ftp数据包,drop掉

2:如果使用udp,可能公网交换机和路由器设置的mtu导致丢包

3:未知,自己抓包看看,跟踪数据包

归途 2021-11-08 22:11:30

我们没有用ftp协议来传输文件,是自己设计的协议,服务器端使用了F5映射做的公网ip,后来发现换成其他端口就好了,所以只能怀疑是使用了21端口造成的问题。

勿忘初心 2021-11-08 22:07:43

为什么会限制21号口呢,如果你的系统是类unix系统,可能是你的权限不够,1024以下的端口都不可以;否则只能说明你的防火墙配置的有问题,注意安全吧!

哑剧 2021-11-08 18:28:18

如果您的mina在含有NAT的网络环境中应用,请将您的ftp服务开启在passive模式,否则服务可以收到客户端的请求,也会处理这个请求,而数据会传递给NAT中的那台机子的对应端口号,也就是说数据发送了,可是真正的客户端没有收到数据.这不是mina的问题,这是你对ftp协议的理解问题。

妖妓 2021-11-08 12:04:06

谢谢你的帮忙,先在确定应该是21端口被限制了,换了其他端口好像就好了。

网名女生简单气质 2021-11-08 10:30:16

服务端抓包。。。

如果抓不到,就不是应用(mina)的问题,检查网络防火墙设备,比如有些高档货,发现在21端口上流动的数据不符合ftp协议,会把数据包drop掉

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文