我对来 self 机器的数据包如何通过代理服务器到达目的地感到困惑。我的机器有一个用于 Intranet 的私有(private) ip,我们有一个带有公共(public) ip 的代理服务器可以与世界对话。
所以我们这里有三个地址。
1) my private ip address
2) proxy server address
3) destination address (google.com)
现在在我发送的 tcp 数据包中,我有源端口和目标端口来区分我的机器和目标上的各种程序(如 mozilla 、 chrome 、ie)。
在 ip 网络层我有源地址和目标地址。
不知道http是不是也有地址
所以当我的数据包离开我的机器时,它包含什么地址。以便它通过中间的网关到达我的代理服务器。 ?
一旦到达代理服务器,就可以使用 NAT 将其发送到目的地。 但我对它如何到达代理服务器感到困惑。
编辑: 我的数据包是否应该包含我的代理服务器(本地私有(private)服务器)的地址才能到达它? 我可以通过配置我的浏览器来更改我的代理服务器。我的数据包离开我的机器后如何知道它会去哪个代理服务器?
最佳答案
数据包 根本没有到达目标。 它里面的数据作为代理和服务器之间新连接的一部分到达目标,在全新的数据包中,其大小和数量可能与下游连接中的不同。从服务器 TCP 的角度来看,它连接到代理,而不是下游客户端。
关于http - 数据包如何通过代理服务器到达目的地?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11922979/