c# - 如何在 .Net C# 中通过代理服务器打开套接字?

标签 c# .net proxy sockets

如何在 .Net C# 中通过代理服务器打开套接字?

所以我在我的机器上打开了一个 socket 。 pe和代理服务器之间没有nats。我连接到代理服务器。现在如何从知道代理服务器地址被代理服务器重定向或传输给我的全局 IP 世界发出请求?

有任何 libs 博客文章吗?请帮忙

最佳答案

你不能“通过”某物打开套接字,只能“到”某物。使用代理服务器(我假设你在谈论支持“CONNECT”命令的 HTTP 代理)是一样的:首先打开一个连接,然后使用它的协议(protocol)使代理转发你想要使用“CONNECT”命令的连接.

因此您需要执行以下步骤:

  1. 连接到代理。
  2. 问题 CONNECT Host:Port HTTP/1.1<CR><LF>
  3. 问题 <CR><LF>
  4. 等待回复。如果包含HTTP/1.X 200 , 连接成功。
  5. 阅读更多响应行,直到收到空行。
  6. 现在,您已通过代理连接到外部世界。进行任何您想要的数据交换。

关于c# - 如何在 .Net C# 中通过代理服务器打开套接字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3127127/

相关文章:

c# - Unity3D获取动画 Controller 当前动画时间

c# - EntityFramework 6 中的 IDbCommandInterceptor 是线程安全的吗

python - 如何通过代理自动连接到Cloud SQL?

sockets - SignalR 似乎没有使用我在尝试连接时提供的根路径

c# - 从 NetworkStream 调用 BeginRead

c# - 总是在(自动)属性前加上 this 关键字被认为是一种好习惯吗?

c# - Uri 类 (.NET) 中的奇怪行为

c# - 如何匹配不同语言的数字?

c# - 检查路径是否在网络上

javascript - 函数 shExpMatch 在 IE10 中总是返回 FALSE