Janz Blog

Janz Blog

利用ipv6愉快的回家吧

77
2024-10-06

经常在外面有需要连到家里的情况,比如访问家里拿点文件或者跑个编译的服务什么的,这时候能让网络回家就至关重要了,在没有公网ipv4的情况下,以往都需要使用内网穿透,利用frp或者中转商的服务回家,不仅慢还有一定的风险。现在ipv6已经很普及了,在没有ipv4的情况下使用ipv6就是最大的优势。

回家的3种方案

  1. wireguard组网,利用udp协议回家。
  2. 基于tcp协议的ss等加密协议
  3. http/socks5等(不推荐,无加密)

前两种方案的区别在于是否需要组网,也就是说是单向的访问还是双向的访问需求,如果单纯只是需要单向的回家,那么ss这种更加的合适,udp一般来说如果大量的包就会被运营商Qos了。

Wireguard组网配置

参考之前写过的配置:Openwrt配置Wireguard组网。wireguard的优势在于更加的灵活,可以配置路由让允许的流量进站,其他的不进。同时在移动端有很好的省电策略。

利用ss协议回家

ss协议这种的优势在于基于tcp协议,不会Qos,稳定性也更好一些,相对配置起来也简单了不少。

配置server端

由于我家里使用了mihomo,恰好mihomo也有server的能力,直接使用了mihomo来完成。

  1. 配置ss入站
listeners:
	- name: ss-in
	  type: shadowsocks
	  port: 10001
	  listen: 0.0.0.0
	  cipher: aes-256-gcm
	  password: vlmpIPSyHH6f4S8WVPdRIHIlzmB+GIRfoH3aNJ/t9Gg=
	  udp: true

具体修改参考官网wiki:Mihomo Listener Shadowsoks

  1. 添加规则(可选)
    有些默认的规则中192.168.0.0/24​这个段是私有地址,正常都是直连的,我的不是所以要自己配置一下规则

    - IP-CIDR,192.168.0.0/24,DIRECT
    

配置客户端

  1. 配置proxy
proxies:
  - name: "home"
    type: ss
    server: <your_ipv6_addr or domaim>
    port: <server port>
    udp: true
    cipher: aes-256-gcm
    password: "vlmpIPSyHH6f4S8WVPdRIHIlzmB+GIRfoH3aNJ/t9Gg="
  1. 配置规则
- IP-CIDR,192.168.0.0/24,home

192.168.0.0/24​ 我的内网网段

总结

两种方式的使用取决于是组网还是简单的回家,各有优势和劣势,但最终都能回家,Nice。

受限于家里的上传带宽,这种方式不太适合大数据的下载。