1

这可能是其中之一“嗯,为什么?” 问题,但我认为这值得一试。

一个服务器端应用程序如何使用客户端 IP 地址作为另一个网站的应用程序 IP 地址?基本思想是,服务器端应用程序所做的任何工作都被视为客户端本身在做工作,而不是服务器的静态 IP。

我不确定更改 HTTP 标头是否有效,但我可能是错的。有这方面的任何文件吗?

谢谢,

凯尔

4

5 回答 5

5

完全,完全不可能。您甚至无法打开 TCP 连接,因为其他网站的服务器将尝试与客户端握手并失败。

IP 地址不仅仅是任何旧 ID,它是服务器将发送任何响应的实际地址。欺骗它基本上只有在您可以将您的请求放入单个 IP 数据包(排除 TCP 和 HTTP)并且对响应不感兴趣的情况下才有意义。即使这样,它也可能会失败,因为您的 ISP 的路由器可能具有反欺骗规则,这些规则会丢弃来自“内部”网络的“外部”IP 地址的数据包。

于 2009-11-27T10:28:45.030 回答
0

为什么一个合法的应用程序想要欺骗它的 IP 地址?

更改 HTTP 标头可能会减少它,但很可能不会。取决于其他服务器的幼稚程度。

听起来您正在尝试以错误的方式做某事,您能否提供更多关于用例到底是什么的信息?

于 2009-11-27T10:19:17.690 回答
0

如果中间不需要处理,您可以在服务器的 IP 防火墙上进行端口转发,以便客户端连接到您的服务器,但最终与另一台服务器通信。

如果您的服务器有更多的参与,那么正确的做法是将客户端的 IP 作为 URL 的一部分(如果它是 Web 应用程序)或数据中的其他位置(如果不是)传递给另一台服务器,以便接收服务器可以知道并正确记录该过程,而无需任何伪造。当然,这也需要更改其他应用程序。

于 2009-11-27T10:29:34.360 回答
0

再次假设我们谈论的是 HTTP,我想到的另一个想法是将您的客户端重定向到另一台服务器。只要所有必要的数据都在 URI 中,您就可以建议客户端的浏览器使用您自己创建的 URI 连接到其他服务器,该 URI 可以携带您的服务器处理为请求添加的任何额外价值。

于 2009-11-27T10:32:48.920 回答
0

几十年前,互联网的设计师问:“我们怎样才能阻止凯尔·罗森多做这种狡猾的事情?”

如果客户端正在合作,您可以在客户端机器上安装一些软件,然后从那里完成工作。例如,您页面上的签名 Java 小程序。[kidding]如果客户端不配合,安装一些木马病毒[/kidding]

于 2009-11-27T16:20:06.367 回答