树莓派+ATC搭建弱网环境
树莓派安装
1. 散热片粘贴
买的是3B+的,所以跟毛哥给的链接中的贴法不太一样,3B+出厂主CPU自带散热片,所以购买配过来的散热片只有一铜一铝,贴法如下:
2. 安装外壳和风扇
可以参考这个链接的视频来安装所购买的对应外壳和风扇:链接
3. 烧录系统(在自己的电脑进行这一步骤)
前期准备:
烧录之前需要确保TF卡未分盘(一般新买来的TF盘都有分盘),否则烧录时会报错
步骤如下:
打开cmd
输入指令,用于查看磁盘
diskpart list disk
- 找到磁盘大小为十几G的磁盘(购买的内存卡为16G的,从列表中可知,我们需要查看的是
磁盘2
- 找到磁盘大小为十几G的磁盘(购买的内存卡为16G的,从列表中可知,我们需要查看的是
查看内存卡(磁盘2)是否有分区
select disk 2 #这里的 2 表示磁盘2 list partition #查看磁盘2的分区情况 select partition 1 #选中要删除的分区 需要手动删除所有分区 delete partition 1 #删除分区 如果磁盘中只有一个分区,则这里需要去掉1,即输入:delete partition
如果删除完分区还不行的话,可以尝试链接的第二个方法:链接
- 下载镜像:下载链接(文件太大,这里就直接去官网下载吧)
下载Win32DiskImager并安装在电脑上(压缩包已在
工具文件夹
中)准备一个TF卡和读卡器,插入电脑中
打开Win32DiskImager
开始烧录
- 左侧选择解压后的镜像所在位置
- 右侧一般是选好的,如果没有选,则按照下图选以下
- 选择Write进行烧录,等待烧录完成,弹出SD卡,插入树莓派上电,系统会自动安装完成。到这里就可以了,后面会弹出要求格式化的提示,不要按照烧录完的提示去格式化,不然就会报错!
4. 树莓派开机
把TF卡(无需读卡器)插到树莓派,然后把树莓派当作是电脑主机,连上电源、显示器、鼠标、键盘。打开电源,等它加载一会,就会出现一个桌面。
5. 树莓派的ssh配置
后期树莓派应该不会给配鼠标显示器等,所以需要配置ssh来远程操作树莓派
前期准备
启动用户系统:
- 打开树莓派的终端
- 输入
sudo passwd root
修改密码(第一次修改密码就相当于开启用户系统了) - 输入两次新的密码( 后期如果想改密码的话,可以用启动用户系统的指令修改密码)
设置有线ip:
su # 输入密码: ifconfig eth0 down #取消之前的有线ip设置 ifconfig eht0 up #重新设置ip ifconfig eht0 192.168.xx.xx #ip设置需要跟公司在同一网段 exit #退出
如果以后打算wifi联网的话,则需要取消有线ip设置。这里需要知道,一旦用wifi联网,则树莓派的ap热点发射功能就不可用。
配置ssh
左上角树莓派图标—>首选项—>Raspberry Pi Configuration—>Interfaces—>将ssh设置为Enable—>重启
重启方法:
左上角树莓派图–> run --> 输入指令:
sudo reboot #重启指令 sudo shutdown -h now #关机指令
电脑如果要连接树莓,则需要安装下ssh:
- 设置–>应用–>可选功能–>添加功能–>ssh
如果还想学习其他方法的话,这里提供一个链接:点这里
电脑远程连接树莓派
- 电脑搜索
远程桌面连接
- 输入树莓派ip
输入树莓派用户名和密码
用户名:pi 密码:raspberry #如果直接官网下载镜像的话,远程登录的密码为raspberry;如果用的是卖家提供的镜像,则最好问一下卖家有没有改这个密码
6. 树莓派配置ap–发射热点能力
参考了这篇文章前的ap配置部分:点这里
**注意:**因为create_ap的开发者已经停止维护了,所以后期如果无法正常使用create_ap发射热点的话,可以参考ap发射.md
文档对树莓派进行配置。
步骤:
在终端输入以下指令:
- 将代码clone到本地
Sudo git clone <https://github.com/oblique/create_ap>
cd create_ap
sudo make install
- 安装依赖库
sudo apt-get install util-linux procps hostapd iproute2 iw haveged dnsmasq
右上角点击流量图标—点击
Turn On Wi-Fi
打开热点
sudo create_ap wlan0 eth0 热点名 密码
- 修改配置文件
create_ap.conf
sudo nano /etc/create_ap.conf
# 将
GATEWAY=10.0.0.1
SSID=MyAccessPoint
PASSPHRASE=12345678 # 修改为
GATEWAY=192.168.xx.1 #网络所在的网关
SID=piWifi #wifi名
PASSPHRASE=piWifi233 #wifi密码#Ctrl+o – 回车 – Ctrl+x# 重启一个服务:
systemctl restart create_ap.service
- 这个时候的wifi虽然能搜索到,但是却不稳定(有时搜不到),且无法连接的,所以还需要配置热点AP使用有线网卡的链接网络,需要输入以下指令:
sudo sh -c iptables-save > /etc/iptables.ipv4.nat
sudo nano /etc/rc.local# 划到最后,看到 exit 0 在这个前面加上一句指令:
iptables-restore < /etc/iptables.ipv4.nat
- 退出来,重新执行
sudo create_ap wlan0 eth0 热点名 密码
,其他设备就可以连接树莓派上的wifi进行上网冲浪啦
树莓派设置wifi的开机自启:
在/etc/rc.local最后添加 sudo create_ap wlan0 eth0 热点名 密码
,添加完后,树莓派开机就会自动发射热点,其他设备填写对应密码就可以连上wifi
sudo nano /etc/rc.local
# 在最后添加
sudo create_ap wlan0 eth0 热点名 密码 # 我添加的是:sudo create_ap wlan0 eth0 piWifi piWifi233
树莓派安装ATC
前期准备:
查看树莓派有没有安装python,如果没有,则安装python
查看django版本(
python –> import django –> django.get_version()
。如果不是1.10版本,则需要卸载django重新安装(因为ATC目前只支持这个版本的django)
python -m pip uninstall django==要卸载的版本
ATC安装
- 在pi目录下的终端执行命令,下载并安装atc:
sudo pip install atc_thrift atcd django-atc-api django-atc-demo-ui dja ngo-atc-profile-storage
- 创建一个django工程,名为atcui
sudo django-admin stratproject atcui
cd atcui
- 进入django目录(
atcui目录
),修改settings.py和urls.py文件
sudo nano settings.py
Settings.py:
INSTALLED_APPS = (#在INSTALLED_APPS中的最后面加入下列内容# Django ATC API'rest_framework','atc_api',# Django ATC Demo UI'bootstrap_themes','django_static_jquery','atc_demo_ui',# Django ATC Profile Storage'atc_profile_storage',
)
urls.py
cd atcui
sudo nano urls.py
from django.views.generic.base import RedirectView
from django.conf.urls import includeurlpatterns = [...# Django ATC APIurl(r'^api/v1/', include('atc_api.urls')),# Django ATC Demo UIurl(r'^atc_demo_ui/', include('atc_demo_ui.urls')),# Django ATC profile storageurl(r'^api/v1/profiles/', include('atc_profile_storage.urls')),url(r'^$', RedirectView.as_view(url='/atc_demo_ui/', permanent=False)),
]
- 更新 Django 数据库
#在绝对路径为/home/pi/atcui这个路径下执行这个命令
python manage.py migrate
atc使用
- 启动核心组件 atcd
sudo atcd --atcd-wan eth0 --atcd-lan wlan0
出现Awaiting graceful shutdown.
后按Ctrl+c
退出。这个要开着,不然就会出现后面我以为的BUG(atc is not running)问题
- 启动 Django 工程
cd ..
sudo python manage.py runserver 0.0.0.0:8000
- 移动设备连接 WiFi,使用浏览器输入
10.0.0.1:8000/atc_demo_ui/
即可进入控制中心,添加网络配置
参数设置方法
在
Shaping Settings
模块设置好网络流量(带宽、延迟、丢包等)在
Profiles
模块为刚刚设置的参设设置一个名字
可以只让一台或多太设备出现延迟,
前提是需要在Authentication
模块填写设备的ip
和给出的临时token
- 设备连接树莓派的wifi,在浏览器输入
http://192.168.28.87:8000
,打开Authentication
模块,下方会显示入网ip和token
- 设备连接树莓派的wifi,在浏览器输入
- 更深入的配置可以按照这个连接的教程进行弱网配置
BUG
页面显示atc is not running
解决方法:
启动atcdsudo atcd --atcd-wan eth0 --atcd-lan wlan0
不要关闭窗口,另外再开一个新窗口输入sudo python manage.py runserver 0.0.0.0:8000
后期使用所需要做的事
- 更深入的配置可以按照这个连接的教程进行弱网配置
树莓派+ATC搭建弱网环境相关推荐
- 弱网环境搭建之 Linux tc iptables 详解
弱网环境搭建之 Linux tc 详解 0. 背景 1. 工具选择 2. 搭建流程 2.1 Linux tc 简介 2.2 弱网搭建思路 2.3 完整代码展示 0. 背景 笔者有一个需要搭建弱网环境来 ...
- 【测试笔记】弱网环境搭建—clumsy0.2
因工作需求,最近接触了弱网环境搭建,浅浅的总结一下给手机搭建弱网环境的整个过程: 实现效果:手机连接指定WiFi上网,延时和丢包在弱网预期内 预期:ping阿里云时延>300ms:丢包率10%. ...
- (转)Facebook ATC弱网环境搭建
用户的网络环境并不是一直处于能高速传输的状态,网络的好坏受用户所处地理位置,同一基站使用人数等许多因素影响.百度公开的数据显示,百度APP使用者约有1%的人群处于弱网状态.所以研究弱网测试,来提升这部 ...
- Facebook ATC弱网环境搭建
本文记录如何利用facebook ATC使用搭建一个弱网环境,与前一篇Dash net(网速控制,可变)类似,但是这个弱网环境不能动态变化,相比DASH_NET好处在可以连接多个设备,分别控制网速 为 ...
- Android 中流量、电量、弱网环境怎么测?
在使用安卓机时,可能又是会经常感受到以下问题: 1.应用后台开着,手机很快没有电了---应用耗电大: 2.首次/非首次启动应用,进入应用特别慢---应用启动慢: 3.使用使用过程中,越来越卡---CP ...
- 树莓派--seafile搭建私人网盘
树莓派–seafile搭建私人网盘 此次目的就是搭建私有云盘,由于之前搭建的nextcloud太过于庞大,小小的树莓派无法支撑nextcloud这艘巨轮,所以这次是换个轻量的云私有seafile 文章 ...
- App-IOS与Android弱网环境测试
弱网环境下App的功能是否正常使用,是否会发生Crash的等情况? 1.IOS ios系统一般自带弱网环境测试,可以通过设置各种网络环境,模拟弱网环境,如3G,wifi,very bad Networ ...
- 网易云信即时通讯推送保障及网络优化详解(三):如何在弱网环境下优化大数据传输
对于移动 APP 来说,IM 功能正变得越来越重要,它能够创建起人与人之间的连接.社交类产品中,用户与用户之间的沟通可以产生出更好的用户粘性. 在复杂的 Android 生态环境下,多种因素都会造成消 ...
- IM 推送保障及网络优化详解(三):如何在弱网环境下优化大数据传输?
对于移动 App 来说,IM 功能正变得越来越重要,它能够创建起人与人之间的连接.社交类产品中,用户与用户之间的沟通可以产生出更好的用户粘性. 在复杂的 Android 生态环境下,多种因素都会造成消 ...
最新文章
- Java线程如何转储
- UVALive5379 UVA270 Lining Up
- docker 内存 cpu 限制 简介
- java servlet例子_Servlet学习教程(三)---- 一个简单的Servlet例子
- 2012自学CCNP路由与交换之四交换机初始化
- Ubuntu16.04下安装MySQL
- ora22813操作数值超出系统的限制_最新:华为“鸿蒙”操作系统终于面世!一旦遭到限制,将随时启用...
- 关于通过反汇编查看dll的方法【转】(
- 一、PHP基础——表单传值、上传文件
- 7-3 sdut-求两个整数之和(I)
- 030、JVM实战总结:G1分代回收原理深度图解:为什么回收性能比传统GC更好?
- 第七届蓝桥杯省赛大学B组C/C++---剪邮票---DFS
- 中国姓氏大全(常见508个,罕见740个)
- 51单片机温控风扇仿真原理图 C语言程序,51单片机温控风扇(含程序+原理图+仿真+PCB)...
- 【LOJ#10064】黑暗城堡
- SEO面试题与面试攻略,SEO面试技巧以及常见问题分享
- 基于React搭建个人空间(更新版)
- 微软飞行模拟服务器,《微软飞行模拟》大型修复补丁即将上线
- 设置windows下的快捷键,例如新建文本,新建word,新建excel
- 微服务(Microservices)——Martin Flower【翻译】