首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

树莓派搭建弱网测试环境全纪录(2)

再接着上一篇

树莓派搭建弱网测试环境全纪录(1)

今天讲讲如何将树莓派设置成具有发射AP热点的能力以及如何在树莓派上安装ATC。

将树莓派设置成具有发射AP热点的能力

手动配置AP的步骤比较繁琐,可以使用rPi3-ap-setup.sh脚本进行自动化配置,执行以下命令,打码的两个参数分别对应热点密码和热点名称。

完成以上操作后,正常情况下就可以搜索到热点 ,但热点可能无法连接,或者提示密码错误,那么可以执行以下命令:

此时设置热点AP已完成,但连接后无法上网,所以还需要配置热点AP使用有线网卡的网络,如下图命令所示:

以上的规则需要设置为重启时自动配置,可以执行:

此时AP配置完成,可以通过连接树莓派的热点来上网了!

安装ATC

这里开始几乎可以说是一步一个坑……

以上AP设置完成后,可以开始部署ATC,步骤参考官方文档Augmented Traffic Controlhttps://github.com/facebook/augmented-traffic-control

下面主要说说遇到的各种坑和解决方案:

一、树莓派下载Django库——报错为TypeError: unsupported operand types for -=: 'Retry' and 'int'的问题

在尝试了各种方式后终于找到了原因:

树莓派自带的Linux系统附带了一个来自前寒武纪的pip版本,如果你不想花费数小时来调试与pip相关的问题,那么就必须升级它。

使用如下命令(记得要加sudo):

二、还会出现下图的这个问题

cd到atcui目录文件下找到settings.py文件并打开。

sudo nano settings.py 找到ALLOWED_HOSTS = [''] 在这里请求的host添加* 改为如下: ALLOWED_HOSTS = ['*'],如下图:

三、安装ATC依赖库出错

直接执行官网文档中的安装命令可能会出错:

如果安装过程中有报错,可以一个一个的安装:

四、atc is not running:ATC和最新版django-rest-framework不兼容

重新安装djangorestframework:

sudo pip install djangorestframework==3.4

五、atc not running:atcd启动时没有设置正确的网卡

执行完sudo python manage.py runserver 0.0.0.0:8000后打开http://localhost:8000页面上提示atc not running

可以看到eth0是网线,wlan0是AP无线热点,所以这里使用—atcd-wan和—atcd-lan来指定:

sudo atcd --atcd-wan eth0 --atcd-lan wlan0

执行成功会显示:

DEBUG:AtcdVService:All tasks started

DEBUG:AtcdVService:VService Active. Awaiting graceful shutdown.

然后新再开启一个终端窗口执行:

sudo python manage.py runserver 0.0.0.0:8000

最后打开地址即可:

http://localhost:8000/

最终效果(具体配置参考APP网络性能测试白皮书这篇文章中的说明):

想要明白些道理,遇见些有趣的事 —— 离岛

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190121G037SB00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券