2012-01-27 50 views
-1

如果客户端有一个特定的IP地址,有没有办法阻止到java服务器的传入连接?如何拒绝某些IP在一个Java服务器

+2

为什么不使用操作系统的工具来做到这一点?在Linux中使用iptables阻止IP地址对于管理员来说是一件容易的事情。 – gyorgyabraham 2012-01-27 15:46:44

+1

在代码中?什么“java服务器”?你自己?别人的?你看过/试过了什么? – 2012-01-27 15:47:21

回答

3

接受连接,然后获取该连接的Socket。之后,调用socket.getInetAddress()并确定是否要回复数据或关闭套接字很简单。

请注意,由于NAT的普遍性,您可能无法真正区分谁与您连接,因为请求可能已被重写(通过NAT),似乎来自网关机器而不是端点-客户。

如果这是一个尝试提供一个“稍微更安全”的组连接,请记住,IP地址欺骗平凡,并且有从别人没有真正的障碍,否则设置他们的机器有你的IP地址。