关于TCP服务器同时只能与一个客户端通信的问题

今天做一个客户的需求,核心是我们服务器端同时只允许与一个客户端通信,一开始思路是多个客户端来连接,服务器accept之后不处理即可,但其他客户端此时发送信息过来,服务器与当前客户端断开连接,与其他客户端连接后,服务器会收到之前客户端发送的信息,查阅一些资料,也没找到好的方法,最终我是用iptables来做的限制,拿到客户端的ip和端口后,下发规则

1. iptables -I INPUT -p tcp --dport 'dst port' -j DROP

2. iptables -I INPUT -s 'ip' -p tcp --sport 'src port' --dport 'dst port' -j ACCEPT

只有此ip的src port才能访问服务器,此客户端断开连接后,删除这些规则

不知道是否还有其他更好的办法来解决此问题

posted @ 2017-08-25 16:55  5分  阅读(953)  评论(0)    收藏  举报