macos 系统代理生效范围请教。 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
cohen121
V2EX    问与答

macos 系统代理生效范围请教。

  •  
      cohen121 2023-04-19 18:21:07 +08:00 1349 次点击
    这是一个创建于 986 天前的主题,其中的信息可能已经有所发展或是发生改变。
    有老哥研究过 macos 下系统代理吗(指 http/https/socks5 ,vpn 另外讨论)
    下面先讨论下 socks5 并以 chrome+SwitchyOmega 作为测试进程,假如我正确设置了系统代理的 sock5 ,下面有三种情况:
    第一种,chrome 选择了直接连接 Direct, chrome 没走 socks5 ;
    第二张,chrome 选择系统代理,chrome 走了 socks5;
    第三种,chrome 选择了单独配置的 socks5 ,chrome 走了单独配置的 socks5 。
    问题: 这里可不可以理解为操作系统单独提供了会走代理的网络接口,只有开发时调用那个接口才会让系统代理对这个进程生效,这样系统代理对有些命令行进程不生效就有解释了。或者有谁知道自己写命令行进程时如何让 tcp 连接走系统代理。
    3 条回复    2023-04-20 16:37:24 +08:00
    Aaron7Amelia
        1
    Aaron7Amelia  
       2023-04-19 18:46:21 +08:00   1
    "系统代理" 类似一个规约。比如某个程序支持“系统代理”,那么程序在运行的时候,会判断当前系统环境变量里有没有 "http_proxy"、"https_porxy" 这种环境变量,如果有的话,那么程序就会使用这个代理。因为“系统代理”并不是一种强制规范,所以有些程序不会去处理这些环境变量

    然后回到你说的你自己写命令行进程,想让 tcp 连接走系统代理。我没有 tcp 连接这种代码经验。但是比如,你在 shell 脚本中写了一个 curl 命令行,我想让 curl 走代理,就很简单。因为 curl 这个程序它认”系统代理“,所以只要 curl 程序运行时,系统环境变量中有 "http_proxy" 这类环境变量即可。所以你的程序要走系统代理,就要让它识别关于代理的系统环境
    Aaron7Amelia
        2
    Aaron7Amelia  
       2023-04-19 18:59:25 +08:00
    @Aaron7Amelia #1 然后我看问题是说通过 Macos 进行设置系统代理。这种方式和我说的用 http_proxy 不太一样。但我个人理解,远离是一样的。通过 Macos 进行设置系统代理,相当于把一些代理信息写到网络的配置文件中,同样会有我上面说的那些问题。就看程序支不支持。

    我个人建议还是通过在 shell 终端中 export htt_proxy 这类系统环境变量来实现代理,可能会比较好掌控下范围
    cohen121
        3
    cohen121  
    OP
       2023-04-20 16:37:24 +08:00
    @Aaron7Amelia 感觉老哥解答。根据你的思路又搜索了一番,系统代理确实是一种约束(或配置),类似于 http_proxy/https_proxy 程序需要在编写时去读取配置(或者使用的网络库已经支持读取这些配置),那么编写后的程序就会支持这些代理,这也解释了为什么有些程序支持系统代理 /http_proxy ,而另一部分不支持。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3171 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 04:37 PVG 12:37 LAX 20:37 JFK 23:37
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86