发布于: 2024-1-6最后更新: 2024-1-7字数 00 分钟

之前搞过好多次内网穿透的事情,每次可能都是有一点需求,折腾完后没有需求过一段又忘了。
所以还是趁着一边弄的时候赶紧记一下。
内网穿透一般有几种常见的做法,适用不同的场合:
  1. 反向代理。本质上是用一个位于公网上的服务器来转发请求到内网服务器。和Nginx、Caddy这种功能反向代理没什么区别。只不过如果公网服务器和内网不在一台机器(如果在一台机器就是常规的服务器服务发布了),这个时候可以通过一些穿透工具维持公网服务器和内网服务的连接。常用的有frps。适用于自己有一个公网服务器能够转发流量,同时带宽有要求(所有流量都要经过公网服务器)。使用最方便,只要在公网服务器和内网服务器启动frp服务,后面使用起来是无感的(当然公网带宽可能是瓶颈)。没有自己的公网服务区可以使用花生壳、ngrok这种免费的服务。
    1. frp
    2. 花生壳、ngrok
  1. P2P打洞。通过建立点对点网络,两个位于不同内网中的节点可以直接连接。大概还是通过一个中间服务器,然后下面点对点两个节点建立起NAT隧道,可以直接进行通信。打洞成功的话效率极高。代表作有parsec(远程桌面连接)、zerotier。
    1. zerotier.

zerotier使用

其实默认配置应该非常简单,傻瓜式一步到底。
两个通信的终端下载软件,我是windows和安卓,然后官网创建一个network,不管的话全部默认。然后终端加入网络就行。
这里第一个大坑:
我的windows终端不能直接下载官网的直接链接,打开后选择 “Join Network...”(加入网络),没有反应。
卸载,重新找一个:Index of /RELEASES/1.8.9/dist/ (zerotier.com)。我下了ZerotierOne.msi这个可以了。
第二个坑,测试时windows和安卓手机互联。如果都连了一个路由器,局域网肯定妥妥没问题。但测试效果时关闭手机wifi使用流量,移动的流量直接打洞是打不了洞的,或者可以也非常卡。比如parsec之前也是,不过可以挂代理用。但zerotier和CFA不能一起使用,手机只能开一个VPN。
这个时候可以结合frps的内网穿透方式。

frps

  1. 安装:安装 | frp (gofrp.org)。公网服务器和内网分别下载对应系统的安装包。
  1. 编写配置文件,根据官网示例。通过自定义域名访问内网的 Web 服务 | frp (gofrp.org)
  1. 云服务器的防火墙开放bindPort。
  1. 添加域名规则。
  1. 启动服务测试。
  1. 添加https。
大坑1:
  1. 国内云服务器只要用域名访问,就必须要备案。解决:可以customDomains = ["ip"]直接设置成ip,然后就用ip:端口访问即可。
尝试了一下垃圾云,1Mbps带宽根本看不了一点。

Tailscale

类似Zerotier的工具,不过它基于账户系统,然后跳过自己构建网络,只要多端设备登录账号即可使用。
实测在移动的流量网络里看电影,还是可以流畅播放的。
 

原理

ZeroTier 和 Tailscale 都是为设备提供虚拟网络服务的工具,允许这些设备无论它们的物理位置如何都能彼此直接通信。这两种技术的目标是简化复杂的网络配置,提供安全的远程访问解决方案。

ZeroTier

ZeroTier 是一个开源的网络虚拟化技术,它创建了一个全球性的分布式网络,通过在参与的节点上运行的 ZeroTier 守护进程来实现。这些节点可以是计算机、手机、服务器或者虚拟机。ZeroTier 的底层原理可以分为几个关键部分:
  1. Peer-to-Peer Networking: ZeroTier 使用 P2P 技术来直接连接各个节点,即使它们位于防火墙或NAT设备后面。
  1. NAT Traversal: 它使用类似于 STUN 或 ICE 的技术来穿透NAT,允许被NAT隐藏的设备接收入站连接。
  1. Central Coordination: 尽管是一个去中心化的网络,ZeroTier 依赖于中心控制平面来帮助节点发现彼此并建立连接。注册到网络的设备会联系这个控制平面来获取其他设备的网络信息。
  1. Encryption: ZeroTier 使用端到端加密来保证数据传输的安全性。
  1. Virtual Ethernet: 它模拟了一个以太网交换机,使得所有连接的设备看起来就像是连接到了同一个交换机上。

Tailscale

Tailscale 建立在 WireGuard 协议之上,是一个更现代的 VPN 解决方案。WireGuard 是一个简单、快速和安全的 VPN 协议,它在内核空间运行,从而提供高性能。Tailscale 利用 WireGuard 的优点,并在以下方面进行了扩展:
  1. WireGuard Protocol: Tailscale 使用 WireGuard 提供的高效和安全的隧道。
  1. Automatic Key Management: WireGuard 需要管理公钥和私钥,Tailscale 自动化了这一过程,使得部署变得更简单。
  1. Auth Integration: Tailscale 集成了现代的身份验证方法,比如 OAuth 和 SSO,来简化用户认证过程。
  1. Network Coordination: 类似于 ZeroTier,Tailscale 有一个中心服务来帮助网络发现和配置。

WireGuard

WireGuard 是 Tailscale 使用的核心 VPN 技术,其主要特点包括:
  1. Simplicity: WireGuard 旨在简化配置和操作,它的代码库相比其他VPN解决方案要小得多。
  1. Performance: WireGuard 在内核空间运行,减少了上下文切换,从而提供了更好的性能。
  1. Cryptography: 它使用了最新的加密技术,包括 Curve25519、ChaCha20、Poly1305、BLAKE2s 和 SipHash24。
  1. Stateless: WireGuard 设计为无状态的,这意味着每个数据包都是独立处理的,不依赖于之前的数据包。这增加了安全性,并简化了 NAT 穿越。
  1. Roaming: 如果你的设备更改了网络连接(比如从 Wi-Fi 切换到移动数据),WireGuard 会自动处理这种情况,保持连接稳定。
Tailscale 和 ZeroTier 都是利用这些底层技术来提供易于使用的网络虚拟化服务。用户只需进行简单的设置,就能建立起一个安全的、可管理的虚拟网络,无需手动配置复杂的网络规则。

windows更新的坑以及禁止
windows更新的坑以及禁止
OpenAI免费API没了~
OpenAI免费API没了~

OpenAI免费API已经不可用了,目前没有很好的解决方案。文章提供了一些注册OpenAI账户的方法,包括使用临时邮箱和虚拟认证码。此外,还提供了一些购买美元的方法,包括使用币安和欧易。最后,作者分享了一些记录和总结。