社区
网络及通讯开发
帖子详情
关于Socket限制IP连接的问题
Jim@luckeeinc.com
2006-04-04 12:56:12
写了段程序 当服务器没有启动的时候,客户端的ClientSocket会每隔3秒自动去尝试连接ServerSocket.
可是当Server启动了之后发现同一个客户端同一个IP居然和服务器建立了多个连接。
如果想限制同一个IP和服务器之间只能有一个连接,用什么方法好一点?
...全文
493
7
打赏
收藏
关于Socket限制IP连接的问题
写了段程序 当服务器没有启动的时候,客户端的ClientSocket会每隔3秒自动去尝试连接ServerSocket. 可是当Server启动了之后发现同一个客户端同一个IP居然和服务器建立了多个连接。 如果想限制同一个IP和服务器之间只能有一个连接,用什么方法好一点?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Jim@luckeeinc.com
2006-04-04
打赏
举报
回复
OK 我再试一下
3996906
2006-04-04
打赏
举报
回复
这个帖子更新速度真快
用closesocket之类的应该就可以。。。
3996906
2006-04-04
打赏
举报
回复
每个请求连接都有超时区的。。。3s显然比超时区做的短,只有超时了才真正放弃,所以有多个连接
自己做超时,到3s开始新请求的时候把以前的socket自己主动关闭掉没准也可以。。。
Jim@luckeeinc.com
2006-04-04
打赏
举报
回复
解决的方法是在每次连接后判断是不是连上了 如果没连上 就先close掉 再尝试连接
但是为什么会出现这样的现象?
3996906
2006-04-04
打赏
举报
回复
client连接的时候带自己的 标志id(可以是你自己分配的一个数字,或者其他方法生成),连接后服务器记录起来,以后来连接就查找一次
相当于做了次连接信息校验。。。能实现要求,可能需要修改连接请求时候的信息结构
判断ip的方法在局域网内可能有效,但是不能一个机器上开2个cilent。。。有点局限性
其他还有啥好主意就想不起来了
Jim@luckeeinc.com
2006-04-04
打赏
举报
回复
不是发现已经连上服务器它还继续连这个问题 是没连上服务器一直在发送连接的请求,可是当服务器开启的时候居然出现了多个连接。
alloutoflove
2006-04-04
打赏
举报
回复
一方面从客户端下手, 客户端发现已经连接到服务器就不要再死皮赖脸地连接服务器了.
第二方面从服务端下手, 发现有死皮赖脸连着不做什么事的连接就close掉^_^
netty
连接
nbiot_基于netty框架的
socket
长
连接
负载均衡解决方案
本文探讨了物联网项目中,尤其是面对大规模设备
连接
时,如何利用Netty框架解决
Socket
长
连接
的负载均衡
问题
。由于单机
Socket
服务存在
连接
数
限制
,文中提出了一种分发服务器的架构,设备先与分发服务器建立
连接
获取
Socket
服务器的
IP
和端口,然后直接与
Socket
服务器建立长
连接
。这种方式避免了传统负载均衡框架在长
连接
场景下的局限性,同时分发服务器压力可控,可随着设备增加而添加更多
Socket
服务器。
db故障:mysql无法
连接
的排错指南
本文总结了解决MySQL无法
连接
问题
的步骤,包括检查host和user列含义、密码错误处理、禁用DNS解析、绑定
IP
访问、网络
问题
排查、
连接
数与端口
限制
、本地端口耗尽、
socket
方式登陆
问题
、内存不足与OOM错误、cgroup内存
限制
问题
等。通过这些方法可以有效解决大多数MySQL
连接
问题
。
linux raw
限制
端口访出,使用Linux raw
socket
时需要注意的一些
问题
本文探讨了在Linux下使用Raw
Socket
创建TCP包并尝试完成3次握手时遇到的
问题
。首先,由于Linux内核的
限制
,必须将
socket
创建在数据链路层以读取所有数据包。然后,通过bind和connect来过滤特定的
IP
和端口。然而,当接收到ACK时,内核因未知先前的SYN包而发送RST,导致
连接
无法建立。博主分析了内核处理TCP包的过程,并引用了相关解释,指出
问题
在于Raw
Socket
与TCP协议栈之间的信息不匹配。
socket
connect超时
在尝试使用Python的
socket
模块
连接
到
IP
为10.2.200.100,端口为300的服务器时,遇到了
连接
超时的
问题
。代码中设置了2秒的超时
限制
,但
连接
在规定时间内未成功,导致抛出了
socket
.timeout异常。
socket
函数返回Too many open files
本文分析了一个因未正确关闭
socket
文件描述符而导致的Too many open files错误。在网络环境不稳定时,频繁的断开重连及
IP
地址获取操作,使得文件描述符累积过多,最终触发系统
限制
。通过代码审查发现,
问题
根源在于函数capture_get_
ip
中未释放已打开的
socket
连接
。
网络及通讯开发
1,317
社区成员
8,874
社区内容
发帖
与我相关
我的任务
网络及通讯开发
C++ Builder 网络及通讯开发
复制链接
扫一扫
分享
社区描述
C++ Builder 网络及通讯开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章