0

我有一个问题:

我如何拦截连接(例如来自 IP 地址:100.100.100.101)并像防火墙一样阻止它?

我不知道从哪里开始。

我想到了 ServerSocket,但只是在当前套接字中工作。

感谢您阅读问题。祝你晚安。

4

2 回答 2

2

您不能用 Java 编写防火墙。

于 2012-03-19T02:41:32.733 回答
2

您可以创建一个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 可以做到的最好的。

于 2012-03-19T02:39:17.937 回答