Sockets 如何创建网络代理程序? 打扰一下我英语说得很差。

Sockets 如何创建网络代理程序? 打扰一下我英语说得很差。,sockets,networking,tcp,proxy,Sockets,Networking,Tcp,Proxy,我正在尝试使用sock5协议创建网络代理编程。但我没有办法学习它,我无法理解代理编程是如何工作的,特别是以下几点: socks5和Shadowsocks之间有什么区别和联系 我是否可以在macOs中设置网络代理配置,而不是使用swift或oc 例如,启用此检查按钮(socks5代理)并使用语言(而不是swift或oc)填写特定配置: 一旦我在问题2中的macOs上设置了选项,如果它监听网络,程序将获得什么样的数据 e、 g.macOs是否会自动将所有新的TCP连接转发到127.0.0.1:10

我正在尝试使用sock5协议创建网络代理编程。但我没有办法学习它,我无法理解代理编程是如何工作的,特别是以下几点:

  • socks5和Shadowsocks之间有什么区别和联系

  • 我是否可以在macOs中设置网络代理配置,而不是使用swift或oc

  • 例如,启用此检查按钮(socks5代理)并使用语言(而不是swift或oc)填写特定配置:

  • 一旦我在问题2中的macOs上设置了选项,如果它监听网络,程序将获得什么样的数据
  • e、 g.macOs是否会自动将所有新的TCP连接转发到127.0.0.1:1086,并自动使连接符合socks5请求标准

    如果是这样,为什么最终处理编程(将数据传输到真正的远程代理服务器)可以成功连接?而不是永久循环(a.编程创建一个到远程代理服务器的套接字->b.macOs自动将其转发到127.0.0.1:1086,并使连接确认到socks5请求标准->a.)

  • 它被称为代理客户端吗?还是本地代理服务器?它的工作是什么。为什么我要将代理地址设置为本地地址而不是直接远程服务器

  • 为什么当我在macOs网络代理选项中设置假socks5选项时,UDP编程仍然可以成功运行

  • 如果你懂中文:
    以下答案基于我自己的经验和观点

    1、
    socks5
    是一种
    互联网协议
    ,通过代理服务器在客户端和服务器之间交换网络数据包。 而
    Shadowsocks
    是一款使用此协议的软件

    是的,你可以。安装一个
    Shaowsocks
    不需要任何 编程语言,实际上它就像在
    Windows
    上安装
    EXE
    文件或在
    MacOS
    上安装pkg一样,它只是一个软件

    3、
    Socks5
    是一种
    互联网协议
    ,类似于两台计算机之间的语言。 在您计算机上运行的软件消息将由Shadowsocks“翻译”。 这些翻译后的消息将被发送到远程服务(也运行一个
    Shadowsocks
    ),然后服务可以将消息发送到那些
    被“阻止”的
    网站服务

    4、 远程服务可以称为
    代理服务
    。本地服务除了被
    翻译外,什么都不做。看

    5、
    QQ
    不要使用
    端口
    1080,
    Shadowsocks
    需要一个
    固定端口
    来“翻译”消息