为什么有些代理使用本地主机 IP 127.0.0.1 而不是直接连接到远程服务器?

为什么有些代理使用本地主机 IP 127.0.0.1 而不是直接连接到远程服务器?

我使用名为 Freegate 的代理,它使用 127.0.0.1,使用 netstat 时我看到的连接如下

TCP 127.0.0.1:8580 127.0.0.1:59118 已建立
TCP 127.0.0.1:8580 127.0.0.1:59120 已建立

作为示例,这里是套接字127.0.0.1:8580与之间的连接127.0.0.1:59118

要查看实际的远程 IP,我必须使用资源监控在 Windows 上。

在此处输入图片描述

当我使用资源监视器时,我看到了该应用程序使用的一些远程 IP。

我的问题是:

  • 为什么此应用程序或类似的应用程序使用 127.0.0.1 而不是直接使用远程 IP?
  • 这些应用程序的内部是如何运作的?

我的意思是,当我在 Windows 中使用 Netstat 命令时,我得到的唯一信息是两个 IP 地址为 127.0.0.1 的套接字之间的连接,我不知道如何从技术角度解释这一点。如果您有任何资源可以解释此处使用的技术或要搜索的关键字,请告诉我。

答案1

您正在使用的代理旨在让您的所有通信都通过它。

例如,如果您的浏览器连接到某个网站,则该网站的路径如下:

browser <-> proxy <-> internet <-> website

从浏览器到代理的第一次跳转是在本地完成的,因此代理在您的计算机内部监听连接。

计算机内部连接使用 本地主机 又称为保留IP地址127.0.0.1。此连接方式采用直接内存接口,速度极快。

代理侦听端口。有关详细信息,请参阅 什么是计算机端口?

答案2

代理本身不执行任何操作。因此,要使代理连接到主机,必须先发生其他事情:客户端必须连接到代理并请求连接到任何目标。

代理正在您的本地 PC 上运行。它似乎正在侦听 TCP 端口 8580 上的客户端。同一台 PC 上的客户端连接到本地主机:8580.然后代理根据需要建立出站连接。

还有一些实际的环回连接,进程连接到自身。这些连接的用途未知。它们可用于代理进程线程之间的进程间通信 (IPC)。

简单的 HTTP 代理是 HTTP 服务器和 HTTP 客户端的组合。服务器接收请求(如GET http://www.example.com),然后发出实际请求,并将响应转发回原始客户端。

自由门似乎使用点对点网络来匿名请求,因此它不会直接连接到目标。

相关内容