树莓派cm4 ioboard配置虚拟网卡、usb无线网卡、静态ip、dhcp服务

树莓派cm4 iobard,可经过配置将树莓派当作一个usb网卡设备,使用usb即可与树莓派进行网络通信。

1、虚拟网卡配置

修改配置文件,将树莓派usb slave配置为网卡设备linux ethernet gadget 。

  • config.txt 中末行添加 dtoverlay=dwc2
  • cmdline.txt 文件中的 rootwait 后添加 modules-load=dwc2,g_ether

重启树莓派生效,会增加一个 usb0 的网络设备,此时没有ip地址分配。

在这里插入图片描述

2、Windows PC 连接测试

使用 micro usb连接开发板和win电脑,会提示有一个RNDIS设备(部分win10可能识别为com设备,安装驱动即可 链接1链接2, 也可如下方式安装:右键更新驱动程序-手动查找和安装-“从计算机的可用驱动程序列表中选取”-“网络适配器”-厂商Microsoft-“远程NDIS兼容设备”),设备管理和网络适配器中显示如下图


连接成功后,查看树莓派的usb0设备会分配一个ip地址 169.254.x.x(每次开机都可能不同)
在这里插入图片描述
此时,window下也能查看到分配到相同网段的ip

到这里,树莓派网卡虚拟配置已经成功,两者能够彼此ping成功。

3、usb无线网卡

树莓派4b安装aarch64版本系统

3.1、ubuntu18.04 接入 rtl8811c无线网卡

ubuntu 18.04 插上之后 使用 dmesg 能够看到 NIC 无线网卡设备,但是ipconfig都就看不到(,并且无线网卡上的信号灯未闪烁)。可以确认是没有驱动。 使用的是rtl8811c系列,直接下载源码安装即可,如下

git clone https://github.com/brektrou/rtl8821CU.git
cd rtl8821CU
make -j4
make install

之后,重启,新增了一个wlan1接口。
在这里插入图片描述
注意,重启后两个无线网卡的名称可能出现调换,即重启后wlan0和wlan1可能对应的是不用网卡设备。

3.2、禁用某个无线网卡

前面可能会出现网卡名称对应设备出现变化的情况,如果要使用特定网卡设备,可以禁用其他网卡驱动。

  • 1、使用 lshw -C network 查看网络设备信息

    ubuntu@ubuntu:~/Downloads/rtl8821CU$ sudo lshw -C network
    *-network:0
       description: Wireless interface
       physical id: 1
       bus info: usb@1:1.1
       logical name: wlan0
       serial: 90:de:80:a7:4d:50
       capabilities: ethernet physical wireless
       configuration: broadcast=yes driver=rtl8821cu ip=192.168.3.59 multicast=yes wireless=IEEE 802.11AC
    *-network:1
       description: Ethernet interface
       physical id: 2
       logical name: eth0
       serial: dc:a6:32:fb:fe:c4
       size: 100Mbit/s
       capacity: 1Gbit/s
       capabilities: ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=bcmgenet driverversion=v2.0 duplex=full ip=192.168.3.39 link=yes multicast=yes port=MII speed=100Mbit/s
    *-network:2
       description: Wireless interface
       physical id: 3
       logical name: wlan1
       serial: dc:a6:32:fb:fe:c5
       capabilities: ethernet physical wireless
       configuration: broadcast=yes driver=brcmfmac driverversion=7.45.202 firmware=01-72f6ece2 ip=192.168.3.29 multicast=yes wireless=IEEE 802.11
    

    可以看到我们的usb网卡使用 驱动为 rtl8821cu,树莓派网卡驱动为brcmfmac

  • 2、在 /etc/modprobe.d/blacklist.conf 屏蔽指定模块
    例如,我们屏蔽树莓派网卡,则需要将树莓派网卡驱动加入到黑名单,禁止系统加载该驱动
    在配置文件末尾添加 blacklist brcmfmac,之后重启即可。
    恢复使用时,删除新增的行,重启。

4、静态ip配置

上一章中,树莓派作为usb网卡插入电脑后,树莓派本机会分配为169.254.x.x网段的随机ip。如果通过PC连接访问树莓派,就会存在问题。因此,期望固定树莓派的ip地址。

/etc/network/interfaces.d 中新增文件 usb0 ,内容如下

auto usb0
allow-hotplug usb0
iface usb0 inet static
address 192.168.112.100
netmask 255.255.255.0

重启后,树莓派和pc端看到ip如下,树莓派静态ip配置成功,但是pc端仍然为169.254.x.x/16网段。
在这里插入图片描述
此时,windows pc端无法ping通树莓派。接着,在windows pc上配置网卡IP为树莓派相同网段,例如 ip为192.168.112.101,掩码为255.255.255.0,再次ping即可成功,如图
在这里插入图片描述

5、dhcp服务

在前一章的基础上,希望树莓派作为网卡接入pc时,pc能自动分配一个相同网段的ip。因此,配置一个dhcp服务。

  • 保留/etc/network/interfaces 中 usb0 的静态 ip 配置
  • 安装 dnsmasq 服务 sudo apt-get install dnsmasq
  • /etc//etc/dnsmasq.conf 文件增加以下内容
    listen-address=192.168.112.100
    interface=usb0
    bind-interfaces
    dhcp-range=192.168.112.101,192.168.112.200, 255.255.255.0, 2h
    dhcp-option=3
    dhcp-option=6
    dhcp-authoritative
    

配置完成后,pc将自动分配 ip池 192.168.112.101~200的地址,网关为192.168.112.100,网关为192.168.112.100,掩码为 255.255.255.0。

重启树莓派,连接到pc上之后,pc自动获取了ip为192.168.112.101。

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

aworkholic

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值