树莓派搭建mesh网络
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了树莓派搭建mesh网络相关的知识,希望对你有一定的参考价值。
参考技术A设备:
参考资料:
如下图所示,mesh网络由MPP、MP、MAP三种设备组成:
这三种设备配置也不一样,他们之间是通过mesh链路连接在一起的,但是需要保证mesh节点工作的信道号和mesh id号必须相同!
首先要能ssh连上树莓派,由于树莓派本身的wifi模块不支持mesh网络,所以挑选了TL-WN722N V1
查看 https://www.jianshu.com/p/6407472e2550
在此示例中,我们将配置一个mesh节点以使用mesh网络,该节点将自动与使用相同配置(mesh和信道)的任何其他对等节点连接。
每个mesh节点都需要配置如下:
我的想使用第二张网卡也就是wlan1来做mesh组网,过程如下:
如果遇到了这个错误 command failed: Device or resource busy (-16) ,就先把网卡关掉在启用
添加mesh
查看是否创建成功
注意:默认情况下,所有mesh接口都从通道1开始。
关闭mesh0并设置mesh id
启用mesh0
分配ip,mesh组网要在同一个网段下
这样一台设备就配置好了。配置其他设备的时候只需要分陪不同的IP即可。在默认配置中,mesh节点将自动尝试创建所有其他具有相同mesh id的网格节点的对等链接。
使用phy接口,使用 iw list ,查看网卡对应的phy,我的wlan1对应的phy1
先关掉wlan1
验证是否创建成功
启用mesh0
设置ip,假设为10.0.0.1
使用 iw dev mesh0 station dump 和 iw dev mesh0 mpath dump 命令检查已建立的对等链接:
iw dev mesh0 mpath dump
一些解释:
Destination MAC Address :目地mac地址。此mesh路径的目的地。直接路径的目的地和下一跳具有相同的MAC地址。
Next-hop MAC address :下一跳地址。直接路径的目的地和下一跳具有相同的MAC地址。
IFACE :专属网的名称
SN :此路径的目标序列号。 DSN用于确定节点路径信息的“新鲜度”。例如,假设节点接收到其路径表中已经存在的目的地的路径响应。如果路径响应的DSN较高,则它将替换现有路径,因为它将被认为是较新的。
Air Time Link Metric :路径的度量(或“成本”)。较低的度量标准是首选,并且在选择了多个路径的情况下,协议栈将选择成本最低的协议(即:空中链路度量最低的协议)。该值是使用预期的吞吐量得出的(metric = 1 + 8192 / Expected_throughput_mbps)预期吞吐量(Expected_throughput_mbps)取决于驱动程序(例如,某些包含重传)。
Frame Queue Length :此网格路径的排队帧数。
Expiration Time :此mesh路径过期的时间(以jiffies为单位)
Discovery Timeout :路径发现的剩余时间(如果正在发现此路径)。
Discovery Retries :重试发现的次数(如果正在发现此路径)。
Flags :它是一个位掩码,由该路径的以下状态标志组成:
树莓派搭建Git服务器
安装ssh
sudo apt-get install ssh
//启动
systemctl start ssh
注意如果apt-get 无法正常请求网络,请检查
/etc/network/interfaces
和resolve.conf
网络配置是否正常。
安装git-core
sudo apt-get install git-core
新增git用户
//添加用户:git
adduser --system --shell /bin/bash --gecos 'git version control by pi' --group --home /home/git git
//设置密码
passwd git
注意:很多资料建议修改git shell参数:
vim /etc/passwd
找到git用户,将 /bin/bash 改为/bin/bash/git-shell (whereis git-shell)
该操作的影响是无法在终端切换到git用户操作
设置git用户目录
mkdir /home/git
chown -R git.git /home/git
【服务端】设置git仓库
cd /home/git
mkdir test.git
chown -R git.git ./test.git
cd ./test.git
git --bare init
【客户端】设置git仓库
- clone git项目
git clone [email protected]:/home/git/test.git
注意:1. 注意ip地址后的路径:/home/git/test.git,与服务器目录地址保持一致
- 如果没有上传ssh 公钥到服务,需要使用密码登录,此时的密码为git账户密码,如果密码无法登录,请检查sshd_config配置是否允许git用户或git用户组登录
- 本地git项目添加远程仓库
git remote add pi [email protected]:/home/git/test.git
git push pi master
注意:pi为远程仓库别名,默认为origin
设置ssh登录
cd /home/git
mkdir .ssh
chown -R git.git ./.ssh
//根据实际测试执行
chmod 700 ./.ssh
cat /tmp/id_rsa.pub >> /home/git/.ssh/authorized_keys
chown -R git.git ./.ssh/authorized_keys
//根据实际测试执行
chmod 600 ./.ssh/authorized_keys
说明:1.
/tmp/id_rsa.pub
为本地上传的公钥文件
以上是关于树莓派搭建mesh网络的主要内容,如果未能解决你的问题,请参考以下文章