旁路由OpenWrt与内网穿透(Tailscale、EasyTier)

旁路由 OpenWrt 与内网穿透(Tailscale、EasyTier)

近况

最近家里的旁路由坏了,这一坏感觉和外界失联了一样,这也用不了那也用不了。还好有一个群晖临时顶一顶。

群晖部署 OpenWrt

下载固件

常见固件下载地址

这里我随便选择了一个 Lean 固件

这个固件包含了我们常用的一些插件:

  • Mosdns
  • 动态 DDNS
  • UPNP 自动端口转发
  • 默认多个主题
  • 默认管理 IP: 192.168.1.251, 用户名 root,密码 password
  • 等等

解压固件并上传

默认是 gz 文件需要解压后,群晖才能识别

gunzip 01.11-openwrt-x86-64-generic-squashfs-combined-efi.img.gz

选择解压后的镜像 img 文件上传

创建 gw 虚拟机

  1. 选项导入硬盘映像

  1. 选择上传的镜像文件

  1. 调整网络,这步的作用主要是确定我们虚拟的软路由的工作模式是“全双工”或者“半双工”,全双工的优势明显,默认的是半双工,所以我们这里需要更改一下即可

PS: 由于我的环境都需要绑定 mac 地址,需要记录 mac 地址并在主路由器绑定相关 ip

  1. 其它设置这里设置自动启动为,其它保持缺省,不需要调整
  2. 分配权限,选择自己的群晖 NAS 管理员账户即可
  3. 点击“完成”创建虚拟机,然后开机
  4. 选择刚刚开机的,点击连接

  1. 出现如下的界面的时候,按电脑的“回车”键进入 OpenWRT shell

  1. 修改默认 ip, 将 “lan” 里面的 ipaddr,gateway 和 dns 更改为自己的配置
vi /etc/config/network
# 示例我的环境
config interface 'lan'
	option device 'br-lan'
	option proto 'static'
	option ipaddr '192.168.31.66'
	option netmask '255.255.255.0'
	option ip6assign '60'
	option gateway '192.168.31.1'
	list dns '8.8.4.4'
  1. 修改完成后保存并退出 vi,然后输入 reboot 命令重新启动 OpenWrt。
reboot
  1. 到这里基本安装就完成了,通过浏览器访问 http://192.168.31.66(具体 IP 根据自己的情况哈)

配置 OpenWrt

修改软件包源,这里默认使用腾讯云 https://mirrors.cloud.tencent.com 镜像源

点击配置 OPKG,具体如下,我这个已经是替换过后的了

配置完成,点击更新列表

开启 ssh 功能

系统-管理权,开启 ssh 登陆功能

安装 Tailscale

搜索 tailscale 安装, 我这里已经安装了。

然后 ssh 登录到 OpenWrt, 开启 tailscale

# 开启启动
/etc/init.d/tailscale enable
# 启动
/etc/init.d/tailscale start
# 获取登录链接
tailscale up --accept-dns=false

这样完事后,tailscale 是组网成功了,只能用 tailscale ping 100.90.80.66, 没法使用系统命令 ping 100.90.80.66

OpenWrt 配置 Tailscale

在 OpenWrt 上新建一个接口,协议选静态地址,设备选 tailscale0,地址为 Taliscale 管理页面上分配的地址,掩码 255.0.0.0。

防火墙区域选 lan 区域。

到这里,基本就完事,保存并应用即可

补充其他

如果你上面 tailscale up 时开启了子网路由,可以将下面内容添加加到防火墙的自定义规则当中,并重启防火墙。

iptables -I FORWARD -i tailscale0 -j ACCEPT 
iptables -I FORWARD -o tailscale0 -j ACCEPT 
iptables -t nat -I POSTROUTING -o tailscale0 -j MASQUERADE

安装 EasyTier

原理和流程同 Tailscale

可视化 UI 配置

OpenWrt 配置 EasyTier

在 OpenWrt 上新建一个接口,协议选静态地址,设备选 easytier0,地址为 Easytier 管理页面上分配的地址,掩码 255.255.255.0。

防火墙区域选 lan 区域。

到这里,基本就完事,保存并应用即可

测试

其他组网节点,使用系统 ping 测试,看看网络是否通。由于本文是事后回忆,可能有疏漏,敬请谅解

Sponsor

Like this article? $1 reward

Comments