我有一个问题:拦截和阻止连接白衣的Java像防火墙
如何我可以拦截(从IP地址例如:100.100.100.101)的连接,并阻止它,就像一个防火墙?
我没有任何想法从哪里开始。
我想到了ServerSocket,但只是在当前套接字中工作。
感谢您阅读这个问题。 祝您有个愉快的夜晚。
我有一个问题:拦截和阻止连接白衣的Java像防火墙
如何我可以拦截(从IP地址例如:100.100.100.101)的连接,并阻止它,就像一个防火墙?
我没有任何想法从哪里开始。
我想到了ServerSocket,但只是在当前套接字中工作。
感谢您阅读这个问题。 祝您有个愉快的夜晚。
您可以创建一个ServerSocket
并监听连接。建立连接后,您可以根据规则集检查IP,并立即关闭连接或允许会话继续。
ServerSocket ss = new ServerSocket(12345);
Socket s = ss.accept();
if(isAllowed(s.getInetAddress()){
//Do something useful.
} else {
// Not allowed, close socket.
s.close();
}
编辑: 作为评论这实际上并没有让你阻止连接,但它是一个可以在Java中做的最好的。
这不是'拦截'。 – EJP 2012-03-19 02:41:21
@EJP如果你想要一个防火墙,你需要使用防火墙,你将无法阻止使用Java的实际连接。这至少可以从Java中完成。 – Dev 2012-03-19 02:43:40
我同意但它不回答他的问题,它不包含这是最好的可以完成的信息。 – EJP 2012-03-19 02:54:05