10

挂代理与不挂代理如何做到无缝切换(非 http)

 2 years ago
source link: https://www.v2ex.com/t/808072
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client
挂代理与不挂代理如何做到无缝切换(非 http)

V2EX  ›  程序员

挂代理与不挂代理如何做到无缝切换(非 http)

  devliu1 · 1 天前 · 1531 次点击

比如我有 ssh 服务,内网是 10.0.0.1:22,通过域名 example.com 访问。 我希望在外网的时候 也可以通过域名 example.com 访问到。 路由器自己解析是可以的,但是外网访问端口和内网端口必须保持一致,有点麻烦,有什么好的类似 PAC 的本地全局代理吗?

13 条回复    2021-10-16 16:25:14 +08:00

dcty

dcty   1 天前

如果你用的是 Mac,那么用 surge 可以解决。dns 解析可以用脚本实现,判断当前网络来返回域名对应的 IP 。

wweir

wweir   23 小时 19 分钟前   ❤️ 3

写个 hosts 文件不好么

IvanLi127

IvanLi127   22 小时 49 分钟前 via Android

只要你有公网 ip 端口没被阻断,好像只要网关把所有端口转发给你的内网服务就好了?内网再开个 dns 服务,网关再设其为默认 dns 服务器,应该能满足吧?

starsky007

starsky007   22 小时 33 分钟前 via Android

Tailscale

z7356995

z7356995   22 小时 21 分钟前 via Android

ipv6 内外网都一样

cweijan

cweijan   21 小时 54 分钟前

就是异地组网嘛, 想快速体验可以用国产的蒲公英, 其他免费的有 Tailscale 、zerotier, 自建则可用 WireGuard

devliu1

devliu1   21 小时 54 分钟前

@dcty 我觉得是正解,能完美解决需求,我要的应该是 programmable 全局代理工具

@wweir hosts 与我自建 dns 没区别呀

@IvanLi127 问题就是公网被阻断了,(所以端口不够用,这才是主要问题!!!)不然网关侧就可以解决这个问题。

@starsky007 这个看着是类似 zerotier 的服务吗?我研究一下

@z7356995 学习了,但是公网没有 v6

devliu1

devliu1   21 小时 46 分钟前

@cweijan 对,其实就是想要一个可以自动适应网络环境的 VPN,如果已经在内网就走内网流量

Xusually

Xusually   17 小时 59 分钟前 via iPhone

Surge

mMartin

mMartin   6 小时 34 分钟前

软路由可以设置 dns 代理 比如爱快的 dns 反向代理功能

cache

cache   5 小时 33 分钟前

@devliu1 Tailscale 就是你要的自动适应网络环境的 VPN,内网时直连,外网如果打洞成功也能直连,否则走中转。
缺点是 Tailscale 的服务器在国外,中转会很慢。

你如果只是端口不够,其实还有一个简单的解决方案:直接复用已经映射好的端口,如 443.

你要编程实现的话,每条新来的连接检测一下第一个包的起始几个字节,如果是 ssh 转内网的 ssh 服务器,如果是 tls 包,转原来的 https 服务。

devliu1

devliu1   1 小时 10 分钟前

@cache 测试了一下 Tailscale 还是慢了,自己编程实现感觉可以设置全局的 socks 代理,然后代理逻辑自己魔改一下?

@mMartin 主要还是端口不够用,本地 DNS 解析是好做的,想在 4 层做自定义的转发

devliu1

devliu1   1 小时 5 分钟前

好像最方便的方式还是多买一个公网 IP 。
每个服务占用一个 IP 的固定端口,在本地 DNS 把公网域名解析到本地。

如果是 https 还可以通过 host 转发给不同的服务。

关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2151 人在线   最高记录 5497   ·  

创意工作者们的社区

World is powered by solitude

VERSION: 3.9.8.5 · 14ms · UTC 09:30 · PVG 17:30 · LAX 02:30 · JFK 05:30
♥ Do have faith in what you're doing.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK