输入搜索…

· ops · 2 min 阅读 (更新于

远程访问局域网设备

通过 tailscale 实现远程访问局域网内设备

远程访问局域网设备

@danieljschwarz

通过 tailscale 远程访问局域网内设备

问题场景

设备 A 和 B 处于同一局域网内,假设他们的内网 IP 分别为 192.168.20.2(A) 和 192.168.20.3。现在有一个设备 C(在另一局域网内,与 A 所在局域网不通),他需要访问 A 的服务,假设为 192.168.20.2:8080,之前的方案是通过在 A 和 C 上同时安装 tailscale 实现通信。但现在 A 无法安装 tailscale,所以需要一个解决方案。

解决方案

计划仍然使用 tailscale,因为我需要他确保一定的网络安全。tailscale 有一个子路由的功能,就是可以通过在某一个设备上启用,让处于同一 vpn 网络下的设备可以直接通过内网地址访问内网设备。

  1. 在设备 B 上启用 IP 转发

        echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf
    sysctl -p
  2. 设备 B 上启动子网路由

    sudo tailscale up --advertise-routes=192.168.20.0/24

  3. 登录 tailscale 控制台,然后找到设备 B,并编辑他的设置 Edit route settings,手动允许刚刚的网段设置

  4. 现在在 C 上测试 192.168.20.2:8080,就可以正常访问了

  5. 如果无法访问,请执行 sudo tailscale up --accept-routes=true

分享:

1

返回文章列表