Padavan安装使用ZeroTier实现组建虚拟局域网的方法
首先到这个网站ZeroTier – Global Area Networking注册登陆,注册及创建网络的过程可以参考网上及其他UP主的教程,我就不重复了。
本篇主要讲述的是hiboy大佬编译的固件在没有USB接口或没有外置存储设备的情况下安装使用ZeroTier的方法。
一、打开opt强制安装
如下图,开启“opt强制安装”后一定不要忘了点击最下面的“应用本页面设置”

二、下载run-zerotier.sh脚本并修改网络ID和路由
如图,将脚本中红框部分替换为自己的NETWORK ID和ZeroTier官网配置好的路由地址

三、上传脚本到路由器/etc/storage目录并赋予执行权限
使用WinSCP等工具将run-zerotier.sh文件上传至/etc/storage目录下
SSH登陆到Padavan,赋予run-zerotier.sh执行权限
chmod +x /etc/storage/run-zerotier.sh
四、将脚本添加到路由器“自定义脚本”中实现开机启动
浏览器打开Padavan Web界面,依次找到“高级设置” -> “自定义设置” -> “脚本” -> “自定义脚本0(功能配置):”,点击“自定义脚本0(功能配置):”,打开输入框,拖动滚动条到最后,粘贴以下内容:
# 启动ZeroTier
/etc/storage/run-zerotier.sh > /tmp/zerotier_log.txt 2>&1
然后点击最下方的“应用本页面设置”

此时脚本会自动执行并将日志保存到/tmp/zerotier_log.txt文件中
在SSH中使用以下命令查看输出日志
tail -f -n50 /tmp/zerotier_log.txt

opt环境已经安装好的话会正常启动
最后出现“【ZeroTier程序】已启动”的字样就表明ZeroTier已经启动了
五、到ZeroTier官网勾选认证并配置路由表
打开ZeroTier Central,点击创建好的网络ID

滚动到下面的Members,点击未认证的方框,等待一会儿便会分配到一个IP地址

此时在SSH中输入ifconfig,在最后会看到ZeroTier虚拟网卡的信息

图中画红线的分别是ZeroTier网卡名称和IP地址,复制出来备用。
如果其他ZeroTier成员想访问Padavan的话只需要记住上面的IP地址(192.168.196.85)即可,若要访问Padavan路由下的其他设备的话还需要做一些设置。
在ZeroTier网站页面翻到Advanced部分,按下图所示填写好Destination和(Via)后,点击Submit。

六、配置防火墙规则使ZeroTier各成员及各路由下的内网设备互访
按下图所示,找到“在防火墙规则启动后执行:”,在文本框中添加以下内容并点击最下面的“应用本页面设置”
# ZeroTier防火墙规则
iptables -A INPUT -i ztxxxxxxxx -j ACCEPT
iptables -A FORWARD -i ztxxxxxxxx -o ztxxxxxxxx -j ACCEPT
iptables -A FORWARD -i ztxxxxxxxx -j ACCEPT
iptables -t nat -A POSTROUTING -o ztxxxxxxxx -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.196.0/24 -j MASQUERADE
logger -t "【ZeroTier防火墙规则】" "添加完成"
注意将红字部分替换为自己的ZeroTier网卡名称和IP地址段


七、重启路由器测试是否配置成功
参考链接
hiboy固件不用U盘使用zerotier的方法 - Padavan - 恩山无线论坛 - Powered by Discuz! (right.com.cn)
Padavan安装使用ZeroTier实现组建虚拟局域网的方法的更多相关文章
- ZeroTier 局域网组建工具
无公网IP通过ZeroTier实现内网穿透 需求:想要在公司访问家里内网NAS,或是在家里访问公司服务 有固定的公网IP或动态的公网IP:常见的方案动态域名解析做端口转发方式等 无公网IP:常见的实现 ...
- 转: CentOS 6.4安装pip,CentOS安装python包管理安装工具pip的方法
from: http://www.linuxde.net/2014/05/15576.html CentOS 6.4安装pip,CentOS安装python包管理安装工具pip的方法 2014/05/ ...
- CentOS安装rar、unrar解压缩软件的方法
闲话不说,centos上如何安装rar.unrar在线解压缩软件呢?如果您的centos是32位的,执行如下命令: wget http://www.rarsoft.com/rar/rarlinux-3 ...
- Anaconda 安装 Python 库(MySQLdb)的方法
[已解决]Anaconda 安装 Python 库(MySQLdb)的方法 zoerywzhou@163.com http://www.cnblogs.com/swje/ 作者:Zhouwan 201 ...
- 在Ubuntu 12.04系统中安装配置OpenCV 2.4.3的方法
在Ubuntu 12.04系统中安装配置OpenCV 2.4.3的方法 对于,在Linux系统下做图像识别,不像在windows下面我们可以利用Matlab中的图像工具箱来实现,我们必须借助Ope ...
- LNMP安装Let’s Encrypt 免费SSL证书方法:自动安装与手动配置Nginx
前几天介绍了最新StartSSL免费SSL申请与配置,很多人看到部落介绍SSL证书安装时总是推荐了OneinStack,因为OneinStack提供了一键添加和配置Let's Encrypt 免费SS ...
- CentOS 6.4安装pip,CentOS安装python包管理安装工具pip的方法
CentOS 6.4安装pip,CentOS安装python包管理安装工具pip的方法如下: 截至包子写本文的时候,pip最新为 1.5.5 wget --no-check-certificate h ...
- 在CentOS7.1上安装Gitlab碰到的问题及解决方法
一 前言 关于在CentOS7上安装Gitlab, 官方文档已经很详细了,步骤大家按照官方的安装文档一步一步安装即可, 这里就不在累述.官方安装文档地址: https://about.gitlab. ...
- 使用 Composer 安装Laravel扩展包的几种方法
使用 Composer 安装Laravel扩展包的几种方法 以下的三种方法都是需要你在项目的根目录运行 第一种:composer install 如有 composer.lock 文件,直接安装,否则 ...
随机推荐
- 在进程空间使用虚拟内存(Windows 核心编程)
虚拟内存空间 如今的 Windows 操作系统不仅可以运行多个应用程序,还可以让每一个应用程序享受到约 4 GB 的虚拟内存空间(包括系统占用),假如内存为 4 GB 的话.那为什么 Window 可 ...
- Win64 驱动内核编程-3.内核里使用内存
内核里使用内存 内存使用,无非就是申请.复制.设置.释放.在 C 语言里,它们对应的函数是:malloc.memcpy.memset.free:在内核编程里,他们分别对应 ExAllocatePool ...
- 关于 C/C++ 函数调用约定
关于 C/C++ 函数调用约定,大多数时候并不会影响程序逻辑,但遇到跨语言编程时,了解一下还是有好处的. VC 中默认调用是 __cdecl 方式,Windows API 使用 __stdcall 调 ...
- unresolved external symbol _WinMain@16
vc下,新建一个win32项目,就写了个main函数,打印hello ,出现了如标题所述的错误 原因: 你建立了一个WINDOWS应用程序,可是你却在入口函数的时候使用main而不是WinMain 解 ...
- 注解配置定时器Scheduling
注解配置定时器配置 package com.demo; import org.springframework.context.annotation.Configuration; import org. ...
- 制作一个简单的toast弹框
toast弹框的作用 toast弹框顾名思义,就是为了弹出一个提示框,效果如图: 使用toast弹框可以可用户带来更好的交互体验 toast弹框的使用 Toast组件 制做出toast的样式以及出现的 ...
- 用scanf_s判断输入数据是否合法
用scanf_s判断输入数据是否合法 对用户输入的整数进行求和.当用户输入任意字符时,结束程序并打印结果. A. 用户可以输入整数和浮点数 B. 用户可以在同一行输入多个数字,数字之间可以是任意一个分 ...
- Ping命令浅析
Ping Ping基于ICMP协议. Ping可以分为 内网Ping 和 外网Ping 下面以内网Ping为例,使用的软件是eNSP和WireShark Step1.创建拓扑,PC ...
- 手写Promise中then方法返回的结果或者规律
1. Promise中then()方法返回来的结果或者规律 我们知道 promise 的 then 方法返回来的结果值[result]是由: 它指定的回调函数的结果决定的 2.比如说下面这一段代码 l ...
- 一看就懂的MySQL的聚簇索引,以及聚簇索引是如何长高的
这一篇笔记我们简述一下 MySQL的B+Tree索引到底是咋回事? 聚簇索引索引到底是如何长高的. 一点一点看,其实蛮好理解的. 如果你看过了我之前的笔记,你肯定知道了MySQL进行CRUD是在内存中 ...