OpenWRT 安装无线网卡(不编译)

派派是只大橘喵
派派是只大橘喵
发布于 2024-03-06 / 1264 阅读 / 0 评论 / 1 点赞

OpenWRT 安装无线网卡(不编译)

OpenWRT 安装无线网卡(不编译)

openWrt还是x86稳啊,起码性能不拉胯,所以很多人购买了 x86 小主机用来做软路由,但是这些小主机一般都会留有无线网卡的接口,像我这个小机器就有一个mini pcie的插槽,我就想用这个机器装一个网卡来供自己提供AP,这样就不用浪费一个网口去做lan了。很多人都说驱动必须要重新自己编译一次,但是其实只要你网卡不买很冷门的网卡,官方其实都有对应的驱动。

1. 购买网卡

要是你有老网卡还想让他服役的话,其实也可以,但是openwrt的驱动还是比较挑网卡的,做ap 的话网卡需要满足一些条件,先不说频段的问题,有些网卡只能作为客户端接入别的wifi,没有办法自己做ap,这个在购买前一定要搞清楚,不然的话就gg。

  1. 网卡必须支持ap模式

  2. 最好买官网有驱动的,不然自己去找驱动整死人

就拿笔者在海鲜市场上购买的这个MT7612e来说吧,联发科的芯片,看看官网上的介绍:

可以看到这款无线网卡支持2.4和5g两个频段,然后ap和中继器也是支持的,天线是2收2发,其他看不懂

然后去openWrt官网查驱动,点击即可前往

一般来说是以kmod开头,直接搜索网卡前面的几个字符就可以,比如我的网卡是mt7612e 对应搜索到去驱动就是 “kmod-mt76x2

2. 安装驱动

假设你已经有了一张网卡了,然后插到你的openwrt上面,首先你要做的就是看看这张网卡能不能被系统是被到,因为我的是mini pice的,所以用命令 lspci 就可以查看到这个网卡

opkg update
opkg install pciutils #安装这个包之后才能使用lspci
lspci

下面是我的lspci结果,由于小主机设备不多,所以我就全部截取下来了

root@OpenWrt:~# lspci
00:00.0 Host bridge: Intel Corporation Atom Processor Z36xxx/Z37xxx Series SoC Transaction Register (rev 0c)
00:02.0 VGA compatible controller: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Graphics & Display (rev 0c)
00:13.0 SATA controller: Intel Corporation Atom Processor E3800 Series SATA AHCI Controller (rev 0c)
00:14.0 USB controller: Intel Corporation Atom Processor Z36xxx/Z37xxx, Celeron N2000 Series USB xHCI (rev 0c)
00:1a.0 Encryption controller: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Trusted Execution Engine (rev 0c)
00:1b.0 Audio device: Intel Corporation Atom Processor Z36xxx/Z37xxx Series High Definition Audio Controller (rev 0c)
00:1c.0 PCI bridge: Intel Corporation Atom Processor E3800 Series PCI Express Root Port 1 (rev 0c)
00:1c.1 PCI bridge: Intel Corporation Atom Processor E3800 Series PCI Express Root Port 2 (rev 0c)
00:1c.2 PCI bridge: Intel Corporation Atom Processor E3800 Series PCI Express Root Port 3 (rev 0c)
00:1c.3 PCI bridge: Intel Corporation Atom Processor E3800 Series PCI Express Root Port 4 (rev 0c)
00:1d.0 USB controller: Intel Corporation Atom Processor Z36xxx/Z37xxx Series USB EHCI (rev 0c)
00:1f.0 ISA bridge: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Power Control Unit (rev 0c)
00:1f.3 SMBus: Intel Corporation Atom Processor E3800/CE2700 Series SMBus Controller (rev 0c)
01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 07)
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 07)
03:00.0 Network controller: MEDIATEK Corp. MT7612E 802.11acbgn PCI Express Wireless Network Adapter

可以看到最后一项就是我们的网卡,这个时候使用ifconfig和ip命令都是无法查看到网卡的,因为没有安装驱动

安装驱动的方法和安装其他包一样,可以去software webgui上搜索也可以后台安装,我这里使用后台安装的方式,因为命令可以复制,但是gui的操作却很难描述清楚

opkg update
opkg install kmod-mt76x2

#安装完成之后直接lsmod 看看有没有加载成功
lsmod | grep mt7

root@OpenWrt:~# lsmod | grep mt7
cfg80211              286720  4 mt76x2_common,mt76x02_lib,mt76,mac80211
mac80211              548864  3 mt76x2e,mt76x02_lib,mt76
mt76                   53248  3 mt76x2e,mt76x2_common,mt76x02_lib
mt76x02_lib            45056  2 mt76x2e,mt76x2_common
mt76x2_common          16384  1 mt76x2e
mt76x2e                20480  0 

可以看到驱动是安装成功了

3. 安装必要的包

安装驱动成功之后,ifconfig 和 ip 命令就可以查看到我们的网卡了

ifconfig -a #-a查看所有网卡(包括没有启动的网卡)
ip link show

下面是命令执行后的样子

root@OpenWrt:~# ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br-lan state UP qlen 1000
    link/ether 00:30:18:50:65:ce brd ff:ff:ff:ff:ff:ff
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP qlen 1000
    link/ether 00:30:18:50:65:cf brd ff:ff:ff:ff:ff:ff
4: br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP qlen 1000
    link/ether 00:30:18:50:65:ce brd ff:ff:ff:ff:ff:ff
5: wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 54:2a:a2:69:e7:cc brd ff:ff:ff:ff:ff:ff

可以看到我们的 wlan0已经是蓄势待发了,这个时候最好不要手动启动这个网卡,因为我们安装了包之后,可以从网页上启动。但是我们进入webGui里面并没有看到有wireless的选项卡,这还是因为没有包的原因

其实这个wireless选项卡就是依赖 wireless-regdb 和 wireless-tools,安装上就可以看见了

opkg install wireless-tools
opkg install wireless-regdb
reboot 

装好需要重启,重启之后就可以看见Network里面多了一个 wireless选项卡

4. 启用无线网卡

进入wireless选项卡之后,就可以看见你的网卡了

但是这里的radio0是一个灰色的状态,如果你去手动的启动网卡,其实也是可以的但是需要每次启动都执行一个这个命令,还是使用openwrt专用的uci工具来进行永久的配置

uci set wireless.radio0.disabled=0
uci commit
reboot 

这条命令是针对OpenWrt路由器系统的配置命令,用于设置无线网络接口 radio0 的禁用状态为启用状态(即将 disabled 参数设置为 0)。

具体解释如下:

  • uci: uci 是 OpenWrt 中的一个工具,用于管理系统的配置信息。它允许用户在命令行中对系统的配置进行查询、修改和更新。

  • set wireless.radio0.disabled = 0: 这部分命令的含义是设置无线网络接口 radio0disabled 参数为 0,即启用该无线网络接口。在OpenWrt中,disabled 参数通常用于控制一个设备或接口的启用或禁用状态,0 表示启用,1 表示禁用。

因此,这条命令的作用是将无线网络接口 radio0 的禁用状态设置为启用状态,使其可以正常工作,允许设备连接到该无线网络。

更改完成之后,还是需要重启,重启之后进入wireless选项卡界面,可以看到radio0已经被默认启动了

5. 安装ap包,创建ap并保存

无线网卡默认打开之后,还需要安装几个ap的包分别是 hostapd-common 和 hostapd,这几个能让ap模式正常工作

opkg update
opkg install hostapd
opkg install hostapd-common
reboot

然后又双叒叕重启

重启之后配置ap

记得添加密码,然后保存,就可以在wifi里面看到了

填上密码就可以愉快的使用咯,嘻嘻嘻


评论