小白劝退警告
编译openwrt需要在linux环境下去编译,可以用VM虚拟机去实现编译,同时需要能够全局科学的上网不然基本编译不成功。这里我使用20.04.1-Ubuntu(Ubuntu自行安装)环境来操作。
1:更新软件列表,命令行终端下运行:
sudo apt-get -y update
2:更新软件运行
sudo apt-get -y upgrade
3:安装编译环境依赖
sudo apt-get -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch python3.5 python2.7 unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib p7zip p7zip-full msmtp libssl-dev texinfo libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint device-tree-compiler g++-multilib antlr3 gperf wget swig rsync
#创建文件夹 mkdir openwrt #给文件夹权限,不添加权限会报错,如何进入目录 sudo chmod 777 openwrt cd openwrt #下载源码 git clone https://git.openwrt.org/openwrt/openwrt.git #再次进入到对应目录 cd openwrt cd openwrt #更新源 ./scripts/feeds update -a #安装 ./scripts/feeds install -a #功能配置编辑 make menuconfig
正常则会进入如下配置界面(操作比较简单方向键加回车控制)
根据CM4-DUAL-ETH-BASE 硬件选择如下:
根据硬件来选择对应的固件,移动上下光标到如图位置(Target System (Atheros ATH79))然后,根据左右方向键选择select直接回车则进入,然后选择 Broadcom BCM27XX:
回车后则会返回首页,相关信息就会变成Raspberry pi的
改下对应目标板的型号,我们这里用的是CM4所以此处我们选择为BCM2711 64bit 的(pi3 zero就不需要改了)
进入LUCI配置界面 开启web管理功能
LuCI--->1.Collections--->luci
进入1.Collections开启Web管理界面,后续就可以通过Web来管理你的智能路由器了
使用空格选址luci前面为*,然后exit回车返回上一层
进入LuCI--->2.Modules--->Translations--->空格Chinese Simplified 中文简体选项改成*标记 后exit返回退出(英语爱好者跳过此步骤)
进入编辑Kernel modules内核模块,找到并进入USB Support--->选项 Kernel modules--->USB Support--->
-*- kmod-usb-core
<*> kmod-usb-hid
-*- kmod-usb-net
<*> kmod-usb-net-rtl8152
-*- kmod-usb2
<*> kmod-usb2-pci
<*> kmod-usb3
最后我们save保存一下
然后选择exit退出,返回上一层后再点exit
执行make -j8 download V=s && make -j1 V=s 下载dl库并开启带线程编译
make -j8 download V=s && make -j1 V=s
等待时间很长,建议晚上睡觉前执行
编译完成
在目录 ~/openwrt/openwrt/bin/targets/bcm27xx/bcm2711 下找到编译成功的系统。就可以把系统复制到windows上去烧录(也可以直接在你的ubuntu上烧录)到CM4中或者烧录到SD卡中
默认编译好的默认IP地址是192.168.1.1,直接设置自己电脑的IP地址为192.168.1.0/24段的地址,通过网页打开192.168.1.1web管理路由器,或则通过SSH远程登录控制。
我们通过电脑接入ETH0接口,然后直接ssh远程登录192.168.1.1
可以通过SSH修改默认管理IP地址编辑vi /etc/config/network文件更改
vi /etc/config/network
光标移动到192.168.1.1处,根据你的个人情况修改IP地址(不要跟你光猫的管理IP冲突了)
修改完毕,然后重启
重启之后就可以看到我们的电脑的IP跳到和设置的IP同一段了
浏览器可以通过管理地址去登录 这边刚改了管理IP 没改的话还是192.168.1.1(前面修改多少IP这里就在浏览器输入多少IP),直接选择登录(没有密码)
登录进去界面如下:
点击菜单栏网络-->接口可以配置接口
点击设备这里可以看到识别到的网口信息,板载两个网口,识别到两个网口,ETH0默认作为网桥子网设备。
板子自带两个USB接口,可扩展多个USB网口,此处我接多了三个USB网口,如下图可以识别到总共5个eth网口。
根据拓扑图 我们将ETH1设置为WAN口,点击网络--->接口--->添加新接口
进入添加新接口弹窗
名称:默认防火墙是LAN口转发WAN口的所以这里的名称对应wan,如果改变了需要自己改防火墙策略;
协议:一般光猫工作方式有两种一种是PPOE播放方式,一种是光猫自动拨号,填写光猫子网IP即可(一般可以DHCP自动获取IP),这里根据你自己实际情况去填写,我们这里选用静态地址
设备下拉我们选择对应的ETH1
然后创建接口,然后就进入wan口编辑页面
根据显示的情况 我们填写下wan口本地ip,网关指向下一跳IP地址即你光猫给过来的IP地址,然后进入高级设置设置DNS,然后选择保存。
返回后,需要点击保存并应用才能生效。
测试网络--诊断网络--使用网络工具看下能否正常上互联网。
然后我们测试下PC终端联网情况。
测试结果如上的话,则表示你的网络搭建完成了。
点击网络-->接口-->设备 配置br-lan
在网桥端口出勾选ETH2 ETH3 ETH4如下图 然后点击保存,返回上一层后点击保存并应用,最后点击接口一栏可以看到br-lan设备有4个端口
我们往ETH4端口接入一个设备后,可以查看到arp表中有两个设备,测试ETH4是否能正常跟ETH0设备互访。
如果你的核心用的是带WIFI版本的,CM4的无线型号跟PI4一致的,可以手动启动无线功能。
使用指令 cd /lib/firmware/brcm/ 进入到brcm目录下,输入指令ls 查看该目录下默认的文件
cd /lib/firmware/brcm/ ls cp brcmfmac43455-sdio.raspberrypi,4-model-b.txt brcmfmac43455-sdio.raspberrypi,4-compute-module.txt #执行完毕重新启动 reboot
重启后登录web管理界面,可以在网络下拉菜单中看到多了个无线选项,我们点击进入无线设置,
进入后我们启用无线功能
启动后 可以看到radio默认的信道是5G频段36信道,这是可能我们无线终端设备可能没法搜索到改SSID,选着下面编辑该SSID进入设备配置
修改工作频率内容如下,也可以修改接口配置下的SSID名称以及工作模式
默认该SSID是开放的没设置密码的 可以进入到无线安全去设置密码
最后不要忘了右下角点击保存,返回后记得保存并应用,设置没有问题的话你就可以在你无线设备上搜索 到对应的SSID信号了。
手机可以搜索到对应信号连接后可以在无线里面看到已连接的设备