P4Pi AP转wifi模式
创始人
2024-05-05 22:32:51
0

调试时间:2022.11.07

        树莓派在安装P4Pi后,会自动设置为AP热点模式。本文档通过配置将树莓派系统从ap模式转变为wifi模式。


1   调试环境

        Raspberry 4B 4GB-SDcard 32GB

        Raspberry Pi Imager v1.7.3

Raspberry Pi OS – Raspberry PiFrom industries large and small, to the kitchen table tinkerer, to the classroom coder, we make computing accessible and affordable for everybody.https://www.raspberrypi.com/software/

        P4Pi镜像版本:p4pi-2022-08-25-6932c3b7-lite.img

Release v.0.0.4 · p4lang/p4pi · GitHubP4 on Raspberry Pi for Networking Education. Contribute to p4lang/p4pi development by creating an account on GitHub.https://github.com/p4lang/p4pi/releases/tag/sigcomm2022

        网线+网线转换器(试连接端口)


2   镜像安装

SD卡需要安装一个P4Pi镜像而不只是树莓派官方镜像

        (1)打开树莓派镜像烧录器,选择存储卡,首先擦除SD卡。

        (2)擦除完成后继续选择该SD卡,选择自定义镜像,点击烧录。

        (3)烧录完成后,将SD卡插入树莓派,安装系统。

        附:烧录完成后,p4pi系统本身没有做GUI界面。但笔记本可以检测到自动开启的热点(SSID:p4pi,密码:raspberry),即烧录成功。连接热点后常用两种方法:一种是在浏览器访问192.168.4.1登入浏览器的web界面;另一种是利用CLI进行ssh连接(用户名:pi,密码:raspberry)。


3   系统网络调试

3.1 p4pi-ap模式

       初始系统将内置网卡设为网桥ap模式,ssid为p4pi。

        p4pi利用hostapd开启ap模式。配置文件路径:/etc/hostapd/hostapd.conf。

                配置主要参数:Linux 配置 WiFi 为 AP 模式 - Linux系统区 - 无忧启动论坛 - Powered by Discuz! Linux 配置 WiFi 为 AP 模式 ,无忧启动论坛icon-default.png?t=MBR7http://bbs.wuyou.net/forum.php?mod=viewthread&tid=431080&ordertype=1

        p4pi利用udhcpd为连接到树莓派的终端设备分配ip地址。

                查看系统信息                    uname -a                    显示:Linux p4pi 5.15.33-v8+…

                查看wlan0连接状态          iw wlan0 link                显示:not connected

3.2 p4pi-ap模式转wifi模式连接外网

       不能直接将网卡变为wlan模式,树莓派在网卡不能自动连接至局域网的情况下,将没有手段连接树莓派。因此为调整内置网卡连入局域网,按以下步骤进行调试:

       1.将树莓派和PC用网线相连,调整两端的eth0接口使其在同一网段。

       2.修改内置网卡转变为wifi模式。

       3.利用有线接入对树莓派进行控制,使其连接上室内局域网。

       4.利用wifi进行通信。

(1)配置静态eth0

        将树莓派与PC用网线相连,配置有线网段192.168.5.0/24。

        树莓派配置vim /etc/dhcpcd.conf,PC配置有图形化界面不做赘述。

        1)树莓派-ip 192.168.5.1/24,网关192.168.5.2/24

               interface eth0

               static ip_address = 192.168.5.1/24

               static router = 192.168.5.2/24

               static domain_name_servers = (DNS地址,非必)

        2)PC-ip 192.168.5.2/24,网关 192.168.5.1/24

        注意:配置后需要reboot重启树莓派,eth0地址才会更改。最后,在关闭WLAN情况下,PC也可以正常登录p4pi的web页面并进行ssh访问,证明有线配置成功。(如果无法有线连接尝试刷新PC配置或插拔网线)

(2)树莓派无线网配置:

        1)首先关闭AP模式

                sudo update-rc.d hostapd disable

                sudo service hostapd stop

        2)配置网口参数

                vi /etc/network/interfaces

        3)预设wifi账户密码(priority配置保留)

               vi /etc/wpa_supplicant/wpa_supplicant.conf

        4)运行wpa_supplicant.conf文件(检测上一步是否有误)

                sudo wpa_supplicant -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf

        5)配置静态ip地址(eth0在wlan0连接成功后去除)

                sudo vim /etc/dhcpcd.conf

        修改后 sudo reboot now 重启树莓派

        PC在与树莓派有线相连的情况下可以利用192.168.5.1访问web界面(树莓派配置的有线静态ip)。也可以在连入同一局域网的情况下利用192.168.1.101访问web界面(树莓派配置的无线静态ip)。利用ssh工具,PC端可以通过192.168.1.101或192.168.5.1访问p4pi系统。之前ap模式下设置的虚拟桥接br0为访问ap模式下的p4pi系统提供ip端口,ap关闭后br0也随之失效。

        netstat -rn查看网关

       配置临时网关sudo route add default gw 192.168.1.1 wlan0 (重启后会失效)


附录

P4pi GitHub:Home · p4lang/p4pi Wiki · GitHubP4 on Raspberry Pi for Networking Education. Contribute to p4lang/p4pi development by creating an account on GitHub.https://github.com/p4lang/p4pi/wikiP4-SDNLAB:

P4 网络编程语言 学习资料整理 - 爱吃西瓜的番茄酱 - 博客园前言 2014年,可编程、协议无关的数据包处理器(Programming Protocol-Independent PacketProcessors,P4)的发布,开启了SDN数据平面可编程的先河。 https://www.cnblogs.com/youcoding/p/15343829.html

P4官网:

P4 – Language Consortiumhttps://p4.org/

P4完整版编程环境搭建:

P4编程环境搭建icon-default.png?t=MBR7https://www.bbsmax.com/A/KE5Qlmv0JL/

树莓派镜像:

Raspberry Pi OS – Raspberry PiFrom industries large and small, to the kitchen table tinkerer, to the classroom coder, we make computing accessible and affordable for everybody.https://www.raspberrypi.com/software/

P4学习笔记:

YAOJ - 知乎学生 回答数 6,获得 566 次赞同https://www.zhihu.com/people/yaoj-x/posts

相关内容

热门资讯

【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AsusVivobook无法开... 首先,我们可以尝试重置BIOS(Basic Input/Output System)来解决这个问题。...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...