0001 MPRG4(基于树莓派5 PCIe设计):修订间差异
(未显示2个用户的10个中间版本) | |||
第7行: | 第7行: | ||
MPRG4(或称MPG4)是一款专为树莓派5设计的,通过PCIe接口扩展的四千兆网口扩展板。该扩展板通过PCIe接口外挂RTL8111H PCIe网口,然后进一步通过交换机芯片扩展成四路千兆网口。可用于以下几种场景: | MPRG4(或称MPG4)是一款专为树莓派5设计的,通过PCIe接口扩展的四千兆网口扩展板。该扩展板通过PCIe接口外挂RTL8111H PCIe网口,然后进一步通过交换机芯片扩展成四路千兆网口。可用于以下几种场景: | ||
1. | 1. 树莓派系统或Ubuntu系统下,其中一个网口连接上级路由器,剩余3个网口为附近其它需要联网的设备提供网络接入(四个网口位于同一个网段),可省却一个外挂的交换机和电源。 | ||
2. OpenWrt软路由系统下,原生千兆配置为WAN口,扩展的四个网口配置为LAN口,可为四台设备提供网络接入服务。 | |||
注意1:四个千兆口位于同一个网段,由上游路由器来分配地址池。如果不接上游路由器,则在树莓派系统和Ubuntu系统下将无法获取合法IP地址(会收到169.254.xx.xx的IP地址,表示仅有物理网线连接但无合法IP地址)。 | 注意1:四个千兆口位于同一个网段,由上游路由器来分配地址池。如果不接上游路由器,则在树莓派系统和Ubuntu系统下将无法获取合法IP地址(会收到169.254.xx.xx的IP地址,表示仅有物理网线连接但无合法IP地址)。 | ||
第16行: | 第16行: | ||
== '''二、硬件资源''' == | == '''二、硬件资源''' == | ||
1. 通过16Pin 0.5mm PCIe FPC线和树莓派5连接; | |||
2. | 2. 板载RTL8111H芯片,实现PCIe转千兆以太网; | ||
3. 板载交换机芯片,将RTL8111H网口扩展为四个千兆以太网,这四个网口具备独立IP,但隶属于同一个网段; | |||
4. 一盏电源指示灯; | |||
5. 一个交换机复位键(Switch RST),适用于树莓派系统和Ubuntu系统下开机一段时间后再插入网线获取不到合法IP的情况; | |||
6. 一个外延的树莓派5开关机按键(同树莓派5自带开关机按键); | |||
7. 可选3D打印底座,可保护桌面不被划伤; | |||
8. 可选钣金外壳,美观可靠; | |||
9. 可选配4G模块安装在树莓派5上方来搭建4G路由器; | |||
10. 尺寸:约86mmx75mm。 | |||
http://www.mcuzone.com/wiki/0001_MPRG4/ | http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_35.jpg | ||
http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_36.jpg | |||
http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_37.jpg | |||
http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_38.jpg | |||
注意:四网口无法接入不同网段的上游路由设备,即无法实现一条电信一条移动一条联通这样的多网聚合应用,也无法实现一个网口接外网一个网口接内网网段的桥接应用。 | 注意:四网口无法接入不同网段的上游路由设备,即无法实现一条电信一条移动一条联通这样的多网聚合应用,也无法实现一个网口接外网一个网口接内网网段的桥接应用。 | ||
== '''三、树莓派OS的使用''' == | == '''三、树莓派OS的使用''' == | ||
树莓派系统下默认已经集成驱动,免驱,可直接使用。 | |||
树莓派OS下载地址: | 树莓派OS下载地址: | ||
第47行: | 第53行: | ||
https://www.raspberrypi.com/software/operating-systems/ | https://www.raspberrypi.com/software/operating-systems/ | ||
3.1 请根据需要烧写树莓派系统,支持32位和64位系统,由于PCIe接口已被占用,只能从TF卡启动; | === 3.1 系统烧写 === | ||
请根据需要烧写树莓派系统,支持32位和64位系统,由于PCIe接口已被占用,只能从TF卡启动; | |||
[[0005 MPS2242 2280 2280P(单SSD扩展板)#3.2 从TF卡启动|点击直达烧写方法说明]] | [[0005 MPS2242 2280 2280P(单SSD扩展板)#3.2 从TF卡启动|点击直达烧写方法说明]] | ||
3.2 系统启动后,执行ifconfig,可看到有eth1设备,即为扩展的RTL8111H网卡: | === 3.2 查看网络 === | ||
系统启动后,执行ifconfig,可看到有eth1设备,即为扩展的RTL8111H网卡: | |||
http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_32.jpg | http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_32.jpg | ||
3.3 PC连接至四网口中的任意一个,树莓派和PC各自运行iperf3进行测速,基本跑满: | === 3.3 网络测试 === | ||
PC连接至四网口中的任意一个,树莓派和PC各自运行iperf3进行测速,基本跑满: | |||
Windows版iperf3下载: | Windows版iperf3下载: | ||
第74行: | 第83行: | ||
== '''四、Ubuntu系统的使用''' == | == '''四、Ubuntu系统的使用''' == | ||
Ubuntu23.10版本加载网卡驱动的流程比较复杂和繁琐,不建议使用。 | |||
本文使用的Ubuntu系统版本为:ubuntu-24.04-preinstalled-desktop-arm64+raspi.img.xz,Ubuntu系统下载地址: | |||
https://ubuntu.com/download/raspberry-pi | https://ubuntu.com/download/raspberry-pi | ||
<!-- | <!-- | ||
注意,Ubuntu系统下需要安装RTL8111H,而且要注意的是系统版本和驱动版本强相关,如有驱动编译问题可以联系我们获取已配置好驱动的镜像文件。 | 注意,Ubuntu系统下需要安装RTL8111H,而且要注意的是系统版本和驱动版本强相关,如有驱动编译问题可以联系我们获取已配置好驱动的镜像文件。 | ||
第152行: | 第162行: | ||
<code>apt-get install shim-signed</code> | <code>apt-get install shim-signed</code> | ||
--> | --> | ||
=== 4.1 安装驱动 === | |||
加载和验证驱动 | |||
Ubuntu24.04下可以直接下载驱动源码并编译,步骤如下: | Ubuntu24.04下可以直接下载驱动源码并编译,步骤如下: | ||
第165行: | 第176行: | ||
<code>sudo modprobe r8168</code> | <code>sudo modprobe r8168</code> | ||
<!--'''''注意:如果按照上面的Ubuntu23.10的步骤执行的话,会在在执行build时报<code>ERROR (dkms apport)</code>,从而无法进行下去。'''''--> | <!--'''''注意:如果按照上面的Ubuntu23.10的步骤执行的话,会在在执行build时报<code>ERROR (dkms apport)</code>,从而无法进行下去。'''''--> | ||
=== 4.2 网络测试 === | |||
=== 4. | |||
运行如下命令即可看到enxxx的有线网接口: | 运行如下命令即可看到enxxx的有线网接口: | ||
第181行: | 第190行: | ||
'''''注意,在Ubuntu系统下RTL8111H网卡被识别成了enxxxx的名称,同样的交换机作为物理层芯片并不会显示在网卡列表里面。''''' | '''''注意,在Ubuntu系统下RTL8111H网卡被识别成了enxxxx的名称,同样的交换机作为物理层芯片并不会显示在网卡列表里面。''''' | ||
== ''' | == '''五、OpenWrt系统的操作''' == | ||
=== 5.1 概述 === | === 5.1 概述 === | ||
MPRG4扩展板的网口在OpenWrt系统下是免驱的,且可配置为一进四出的交换机模式,我们可以将树莓派自带网口配置为WAN口,扩展板四个网口做LAN,可以供其他设备使用,获得同网段的IP地址。 | |||
本文使用的OpenWrt系统为:openwrt-bcm27xx-bcm2712-rpi-5-squashfs-sysupgrade-linux-6.1.92-20240530a.img.gz | 本文使用的OpenWrt系统为:openwrt-bcm27xx-bcm2712-rpi-5-squashfs-sysupgrade-linux-6.1.92-20240530a.img.gz | ||
=== 5.2 准备工作 === | |||
默认状态下,树莓派自带的网口为LAN口,我们通过树莓派自带网口连接网线至PC网口,上电且启动系统后,打开网页浏览器输入192.168.198.1进入OpenWrt系统。 | |||
默认用户名为<code>root</code>,默认密码为<code>password</code>。 | 默认用户名为<code>root</code>,默认密码为<code>password</code>。 | ||
第199行: | 第208行: | ||
http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_18.png | http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_18.png | ||
在电脑端使用终端软件(如SecureCRT等)连接开发板,可以看到设备识别,在默认状态下,eth0为LAN口,即树莓派自带的网口,这里设置成了网桥模式,网络地址在br-lan里面看: | |||
http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_21.png | http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_21.png | ||
第211行: | 第220行: | ||
http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_20.png | http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_20.png | ||
=== 5.3 | === 5.3 设置网络端口 === | ||
设备正常识别后,我们打开网络-接口。 | 设备正常识别后,我们打开网络-接口。 | ||
第238行: | 第247行: | ||
http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_28.png | http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_28.png | ||
=== 5. | === 5.3 网络测试 === | ||
重启设备,将新的WAN口,即树莓派自带的网口接入上级路由器,而扩展板的四个网口此时为LAN口,就可以连接其他网络设备获取网络,我们将两个网口连接两台PC简单测试一下网络带宽。 | |||
使用iperf3在两台电脑之间互相测试: | 使用iperf3在两台电脑之间互相测试: | ||
第249行: | 第258行: | ||
可见测试结果正常。 | 可见测试结果正常。 | ||
== ''' | == '''六、搭配Radxa Rock 5C(RK3588S2)的操作''' == | ||
=== 6.1 概述 === | === 6.1 概述 === | ||
Radxa的Rock | Radxa的Rock 5C基于RK3588S2设计,具备一路千兆以太网和四个USB口,尺寸兼容树莓派5,且并引出了和树莓派5兼容的PCIe接口,我们可以通过该PCIe接口来扩展各类原本为树莓派5设计的PCIe扩展板。这里我们将MPRG4扩展板配套测试。 | ||
演示使用的软件平台: | |||
本文采用的系统版本为:debian bullseye kde b3,github下载地址: | 本文采用的系统版本为:debian bullseye kde b3,github下载地址: | ||
https://github.com/radxa-build/rock-5c/releases/ | https://github.com/radxa-build/rock-5c/releases/ | ||
http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_09.png | http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_09.png | ||
第267行: | 第274行: | ||
=== 6.2 准备工作 === | === 6.2 准备工作 === | ||
系统烧写到TF卡后插卡启动,默认账户登录密码是radxa。 | |||
进入系统后在菜单下找到konsole进入命令行终端。 | |||
执行<code>lspci</code>,确保能看到RTL8111的设备信息。(能看到说明扩展板硬件正常,如果看不到要检查FPC连接可靠性,注意FPC线缆有朝向,有一侧注明了RPi5要连接到Rock 5C。) | |||
http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_15.png | http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_15.png | ||
将网线连接至原生千兆,执行: | |||
<code>sudo apt-get update</code> | <code>sudo apt-get update</code> | ||
第289行: | 第294行: | ||
http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_11.png | http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_11.png | ||
=== 6.3 | === 6.3 安装驱动及测试 === | ||
以dkms的方式安装驱动即可: | |||
<code>sudo apt-get install r8168-dkms</code> | <code>sudo apt-get install r8168-dkms</code> | ||
第296行: | 第301行: | ||
<code>sudo modprobe r8168</code> | <code>sudo modprobe r8168</code> | ||
安装完毕后执行<code>sudo ifconfig -a</code>检查是否有enp开头网卡,即为RTL8111网卡,注意,交换机是物理层设备,ifconfig是看不到的。 | |||
http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_16.png | http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_16.png | ||
通过ping包确认网络是否连通: | |||
http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_13.png | http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_13.png | ||
第306行: | 第311行: | ||
至此,网卡驱动已经安装完成并可正常运行。 | 至此,网卡驱动已经安装完成并可正常运行。 | ||
我们也可以使用iperf3测速,基本能跑满千兆。 | |||
http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_14.png | http://www.mcuzone.com/wiki/0001_MPRG4/MPRG4_14.png | ||
{{联系我们_图标}} | {{联系我们_图标}} |
2024年11月15日 (五) 10:55的最新版本
Change the language to English
关键词
树莓派5、Raspberry Pi 5、MPRG4、MPG4、RTL8111H、四千兆网口扩展板、Pi OS、Ubuntu、OpenWrt、软路由、交换机、Radxa、Rock 5C
一、简介
MPRG4(或称MPG4)是一款专为树莓派5设计的,通过PCIe接口扩展的四千兆网口扩展板。该扩展板通过PCIe接口外挂RTL8111H PCIe网口,然后进一步通过交换机芯片扩展成四路千兆网口。可用于以下几种场景:
1. 树莓派系统或Ubuntu系统下,其中一个网口连接上级路由器,剩余3个网口为附近其它需要联网的设备提供网络接入(四个网口位于同一个网段),可省却一个外挂的交换机和电源。
2. OpenWrt软路由系统下,原生千兆配置为WAN口,扩展的四个网口配置为LAN口,可为四台设备提供网络接入服务。
注意1:四个千兆口位于同一个网段,由上游路由器来分配地址池。如果不接上游路由器,则在树莓派系统和Ubuntu系统下将无法获取合法IP地址(会收到169.254.xx.xx的IP地址,表示仅有物理网线连接但无合法IP地址)。
注意2:在树莓派系统和Ubuntu系统下如果开机时没有插网线一段时间后系统将会获取到169.254.xx.xx的IP地址,此时即便插入来自上游路由器的网线后系统也获取不到合法IP,需要按一下扩展板上的交换机复位键才能重新获取到合法IP地址。
二、硬件资源
1. 通过16Pin 0.5mm PCIe FPC线和树莓派5连接;
2. 板载RTL8111H芯片,实现PCIe转千兆以太网;
3. 板载交换机芯片,将RTL8111H网口扩展为四个千兆以太网,这四个网口具备独立IP,但隶属于同一个网段;
4. 一盏电源指示灯;
5. 一个交换机复位键(Switch RST),适用于树莓派系统和Ubuntu系统下开机一段时间后再插入网线获取不到合法IP的情况;
6. 一个外延的树莓派5开关机按键(同树莓派5自带开关机按键);
7. 可选3D打印底座,可保护桌面不被划伤;
8. 可选钣金外壳,美观可靠;
9. 可选配4G模块安装在树莓派5上方来搭建4G路由器;
10. 尺寸:约86mmx75mm。
注意:四网口无法接入不同网段的上游路由设备,即无法实现一条电信一条移动一条联通这样的多网聚合应用,也无法实现一个网口接外网一个网口接内网网段的桥接应用。
三、树莓派OS的使用
树莓派系统下默认已经集成驱动,免驱,可直接使用。
树莓派OS下载地址:
https://www.raspberrypi.com/software/operating-systems/
3.1 系统烧写
请根据需要烧写树莓派系统,支持32位和64位系统,由于PCIe接口已被占用,只能从TF卡启动;
3.2 查看网络
系统启动后,执行ifconfig,可看到有eth1设备,即为扩展的RTL8111H网卡:
3.3 网络测试
PC连接至四网口中的任意一个,树莓派和PC各自运行iperf3进行测速,基本跑满:
Windows版iperf3下载:
http://www.mcuzone.com/down/Software.asp?ID=10000634
Linux下iperf3安装:
sudo apt-get install iperf3
四网口之间的iperf3测试也一样可以跑满。
注意1:四个端口的交换机是物理层设备,系统下不可见。
注意2:如果开机前没有插网线连接至上级路由器,一段时间后即便接入网线也会无法联网(IP地址为169.254.xx.xx),此时需要按一下交换机的复位键(丝印标记为Switch RST).
四、Ubuntu系统的使用
Ubuntu23.10版本加载网卡驱动的流程比较复杂和繁琐,不建议使用。
本文使用的Ubuntu系统版本为:ubuntu-24.04-preinstalled-desktop-arm64+raspi.img.xz,Ubuntu系统下载地址:
https://ubuntu.com/download/raspberry-pi
4.1 安装驱动
加载和验证驱动
Ubuntu24.04下可以直接下载驱动源码并编译,步骤如下:
准备编译环境:
sudo apt-get install --reinstall linux-headers-$(uname -r) linux-headers-generic build-essential dkms
下载编译驱动:
sudo apt install r8168-dkms
sudo modprobe r8168
4.2 网络测试
运行如下命令即可看到enxxx的有线网接口:
ifconfig -a
使用iperf3测速,基本能跑满千兆。
注意,在Ubuntu系统下RTL8111H网卡被识别成了enxxxx的名称,同样的交换机作为物理层芯片并不会显示在网卡列表里面。
五、OpenWrt系统的操作
5.1 概述
MPRG4扩展板的网口在OpenWrt系统下是免驱的,且可配置为一进四出的交换机模式,我们可以将树莓派自带网口配置为WAN口,扩展板四个网口做LAN,可以供其他设备使用,获得同网段的IP地址。
本文使用的OpenWrt系统为:openwrt-bcm27xx-bcm2712-rpi-5-squashfs-sysupgrade-linux-6.1.92-20240530a.img.gz
5.2 准备工作
默认状态下,树莓派自带的网口为LAN口,我们通过树莓派自带网口连接网线至PC网口,上电且启动系统后,打开网页浏览器输入192.168.198.1进入OpenWrt系统。
默认用户名为root
,默认密码为password
。
浏览器地址可以在Windows设置中找到网络和Internet,在以太网中打开连接的网络查看IP地址。
在电脑端使用终端软件(如SecureCRT等)连接开发板,可以看到设备识别,在默认状态下,eth0为LAN口,即树莓派自带的网口,这里设置成了网桥模式,网络地址在br-lan里面看:
SecureCRT软件可按照以下方式设置:
5.3 设置网络端口
设备正常识别后,我们打开网络-接口。
随后我们点击添加新接口,设置好名称、接口协议,将WAN口设置为eth0。
点击”提交“后在防火墙设置选中WAN。
设置完后我们点击”保存“,注意不要点击”保存&应用“,否则将进入不了系统。
点击返回至概况后,我们点击LAN口修改。
在物理设置下将接口设置为eth1。
设置完成后我们点击”保存&应用“。注意,因为此时网络设置发生了变化,所以会一直显示”正在应用更改“,这不是故障,我们稍等片刻后就可以进行下一步操作。
5.3 网络测试
重启设备,将新的WAN口,即树莓派自带的网口接入上级路由器,而扩展板的四个网口此时为LAN口,就可以连接其他网络设备获取网络,我们将两个网口连接两台PC简单测试一下网络带宽。
使用iperf3在两台电脑之间互相测试:
可见测试结果正常。
六、搭配Radxa Rock 5C(RK3588S2)的操作
6.1 概述
Radxa的Rock 5C基于RK3588S2设计,具备一路千兆以太网和四个USB口,尺寸兼容树莓派5,且并引出了和树莓派5兼容的PCIe接口,我们可以通过该PCIe接口来扩展各类原本为树莓派5设计的PCIe扩展板。这里我们将MPRG4扩展板配套测试。
演示使用的软件平台:
本文采用的系统版本为:debian bullseye kde b3,github下载地址:
https://github.com/radxa-build/rock-5c/releases/
6.2 准备工作
系统烧写到TF卡后插卡启动,默认账户登录密码是radxa。
进入系统后在菜单下找到konsole进入命令行终端。
执行lspci
,确保能看到RTL8111的设备信息。(能看到说明扩展板硬件正常,如果看不到要检查FPC连接可靠性,注意FPC线缆有朝向,有一侧注明了RPi5要连接到Rock 5C。)
将网线连接至原生千兆,执行:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install net-tools
安装完毕net-tools后才能使用ifconfig工具,当然你也可以使用其它工具来操作网络。
6.3 安装驱动及测试
以dkms的方式安装驱动即可:
sudo apt-get install r8168-dkms
sudo modprobe r8168
安装完毕后执行sudo ifconfig -a
检查是否有enp开头网卡,即为RTL8111网卡,注意,交换机是物理层设备,ifconfig是看不到的。
通过ping包确认网络是否连通:
至此,网卡驱动已经安装完成并可正常运行。
我们也可以使用iperf3测速,基本能跑满千兆。
联系我们
电话:13957118045
如本页面有任何疏漏、错误或者侵权,请通过上述途径联系我们,谢谢!
Copyright 2004-2024 野芯科技