# Realtek RTL8188CUS – USB 802.11n 无线网卡评测

* 原文：[Realtek RTL8188CUS – USB 802.11n WiFi Review](https://vermaden.wordpress.com/2020/10/30/realtek-usb-wifi-review/)
* 作者：𝚟𝚎𝚛𝚖𝚊𝚍𝚎𝚗
* 发布时间：2020/11/18

在新款笔记本上使用 FreeBSD 时，有时你会发现自带的 WiFi 芯片不受支持……或者在 RELEASE 版本中尚未支持，而支持仅存在于你不想使用的开发版本 CURRENT 中。

这时，芯片 **Realtek RTL8188CUS** 就派上用场了。

![](https://vermaden.wordpress.com/wp-content/uploads/2020/10/realtek.png?w=960)

它被用于许多设备和产品，但我们关心的是它的小型 USB WiFi 版本，非常小巧。

Realtek 公司甚至在 2011 年因其 **802.11b/g/n 2.4GHz 1T1R WLAN 单芯片控制器（RTL8188CE/RTL8188CUS）** 获得了 [*台湾绿能经典奖 2011*](https://www.realtek.com/en/about-realtek/milestones-and-awards)，当时该芯片刚推出。

![](https://vermaden.wordpress.com/wp-content/uploads/2020/10/chip.jpg?w=960)

![](https://vermaden.wordpress.com/wp-content/uploads/2020/10/chip-look.jpg?w=960)

由于仅配备 1×1 天线并支持 802.11n，它的性能并不强——最高 150Mbps，仅单天线。

它体积也非常小，几乎不会从笔记本上突出来。

![](https://vermaden.wordpress.com/wp-content/uploads/2020/10/chip-space.jpg?w=960)

在连接时，它还会发出微弱的灯光。

![](https://vermaden.wordpress.com/wp-content/uploads/2020/10/chip-light.jpg?w=960)

## FreeBSD

下面展示它在 FreeBSD 上的使用情况。本文以 12.2-RELEASE 为例，但三年前在 11.1-RELEASE 上也是同样适用。

我的 *ThinkPad W520* 笔记本已经配备了 **Intel 6300** WiFi 卡，3×3 天线，802.11n 标准，由 **iwn(4)** 驱动。

```sh
# sysctl net.wlan.devices
net.wlan.devices: iwn0
```

现在我们将连接到 **Realtek RTL8188CUS** 芯片，并查看 **dmesg(8)** 命令的输出。

```sh
# dmesg
(...)
ugen2.3:  at usbus2
rtwn0 on uhub4
rtwn0:  on usbus2
rtwn0: MAC/BB RTL8188CUS, RF 6052 1T1R
```

……以及来自 **usbconfig(8)** 命令的更多信息。

```sh
# usbconfig
(...)
ugen2.3:  at usbus2, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)

# usbconfig -d 2.3 show_ifdrv
ugen2.3:  at usbus2, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)
ugen2.3.0: rtwn0:
```

它现在被列为 **rtwn0**，因为在 FreeBSD 上由 **rtwn(4)** 驱动。

```sh
# sysctl net.wlan.devices
net.wlan.devices: rtwn0 iwn0
```

现在让我们用这个 Realtek 芯片连接无线网络。我将创建 **wlan1** 设备，因为 **wlan0** 已经被另一张 Intel 6300 卡占用。

```sh
# ifconfig wlan1 create wlandev rtwn0

# ifconfig wlan1
wlan1: flags=8802<broadcast,simplex,multicast> metric 0 mtu 1500
        ether 00:1d:43:21:2d:1c
        groups: wlan
        ssid "" channel 1 (2412 MHz 11b)
        regdomain FCC country US authmode OPEN privacy OFF txpower 30 bmiss 7
        scanvalid 60 wme bintval 0
        parent interface: rtwn0
        media: IEEE 802.11 Wireless Ethernet autoselect (autoselect)
        status: no carrier
        nd6 options=21<performnud,auto_linklocal>

# wpa_passphrase WIFINETWORK PASSWORD >> /etc/wpa_supplicant.conf

# wpa_supplicant -i wlan1 -c /etc/wpa_supplicant.conf
Successfully initialized wpa_supplicant
wlan1: Trying to associate with d8:07:b8:b8:f4:81 (SSID='wireless' freq=2442 MHz)
wlan1: Associated with d8:07:b6:b8:f4:81
wlan1: WPA: Key negotiation completed with d8:07:b6:b8:f4:81 [PTK=CCMP GTK=CCMP]
wlan1: CTRL-EVENT-CONNECTED - Connection to d8:07:b6:b8:f4:81 completed [id=40 id_str=]
^Z // 在这里按 [CTRL]+[Z] 键
zsh: suspended  wpa_supplicant -i wlan1 -c /etc/wpa_supplicant.conf

# bg
[1]  + continued  wpa_supplicant -i wlan1 -c /etc/wpa_supplicant.conf

#
```

此时我们的网络二层（LAYER 2）应该已经连接，**wpa\_supplicant(8)** 应在后台运行，**wlan1** 接口应显示 **associated** 状态。

```sh
# ps ax | grep wpa_supplicant
48693  4  S        0:00.43 wpa_supplicant -i wlan1 -c /etc/wpa_supplicant.conf
50687  4  S+       0:00.00 grep --color wpa_supplicant

# ifconfig wlan1
wlan1: flags=8843<up,broadcast,running,simplex,multicast> metric 0 mtu 1500
        ether 00:1d:43:21:2d:1c
        groups: wlan
        ssid wireless channel 7 (2442 MHz 11g ht/20) bssid d8:07:b6:b8:f4:81
        regdomain FCC country US authmode WPA2/802.11i privacy ON
        deftxkey UNDEF AES-CCM 2:128-bit txpower 30 bmiss 7 scanvalid 60
        protmode CTS ht20 ampdulimit 64k ampdudensity 4 shortgi -stbc -ldpc
        -uapsd wme roaming MANUAL
        parent interface: rtwn0
        media: IEEE 802.11 Wireless Ethernet MCS mode 11ng
        status: associated
        nd6 options=29<performnud,ifdisabled,auto_linklocal>
```

现在使用 **dhclient(8)** 命令为网络添加三层（LAYER 3）并获取 IP 地址。

```sh
# dhclient wlan1
DHCPDISCOVER on wlan1 to 255.255.255.255 port 67 interval 3
DHCPOFFER from 10.0.0.1
DHCPREQUEST on wlan1 to 255.255.255.255 port 67
DHCPACK from 10.0.0.1
bound to 10.0.0.9 -- renewal in 3600 seconds.
```

我们刚刚获得了 IP 地址 **10.0.0.9**。

最后一步是配置 DNS，然后使用命令 **ping(8)** 测试连接。

```sh
# echo nameserver 1.1.1.1 > /etc/resolv.conf

# ping -c 3 freebsd.org
PING freebsd.org (96.47.72.84): 56 data bytes
64 bytes from 96.47.72.84: icmp_seq=0 ttl=50 time=119.870 ms
64 bytes from 96.47.72.84: icmp_seq=1 ttl=50 time=119.371 ms
64 bytes from 96.47.72.84: icmp_seq=2 ttl=50 time=119.128 ms

--- freebsd.org ping statistics ---
3 packets transmitted, 3 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 119.128/119.456/119.870/0.309 ms
```

可用。

## FreeBSD 性能测试

接下来，我使用 **thunar(1)** 文件管理器，通过 NFS 大文件传输测试了这块简单的单天线 Realtek 芯片的性能。

![](https://vermaden.wordpress.com/wp-content/uploads/2020/10/not-great-not-terrible.jpg?w=960)

结果不算太差，但也算不上优秀。

从直接连接到 WiFi 路由器的局域网服务器复制文件到我的笔记本，速度约为 **2.9 MB/s**。我当时距离路由器 **5 米**。

```sh
服务器  ==局域网==>  路由器  ==WiFi==>  笔记本  @  2.9 MB/s
```

从笔记本通过 WiFi 向直接连接到 WiFi 路由器的局域网服务器复制文件，速度约为 **2.6 MB/s**。仍然距离路由器约 **5 米**。

```sh
笔记本  ==WiFi==>  路由器  ==局域网==>  服务器  @  2.6 MB/s
```

分别为 **23.2 Mbps** 和 **20.8 Mbps**。远低于单天线 802.11n 理论传输速度 150 Mbps……这很可能是 FreeBSD 无线栈的问题。

我认为这对于上网浏览已经足够，但通过 NFS 使用本地局域网资源可能会很痛苦。

相比之下，我的 Intel 6300 WiFi 卡在笔记本到路由器到服务器的复制速度为 **5.5 MB/s**，在服务器到路由器到笔记本的传输速度为 **10.5 MB/s**，分别为 **44 Mbps** 和 **84 Mbps**，而理论最大值为 450 Mbps。Intel 6300 和我的路由器均为 3×3 天线。

希望这些数字能接近 **30 MB/s**……

## 树莓派

**Realtek RTL8188CUS** 芯片的另一个优点是它在树莓派等小型设备上表现良好。我个人在 **树莓派 2B** 上测试过，效果非常出色。

![](https://vermaden.wordpress.com/wp-content/uploads/2020/10/rpi.jpg?w=960)

## 价格

这款芯片的价格也非常诱人。基于它的产品随处可见。在 *EBAY*、*全球速卖通* 上都有出售，许多情况下价格低至 **$2.50**。

有时运费甚至比产品本身还贵 :🙂:

尽情享用。

## 更新 1 – 中世纪状态

Reddit 用户 [Yaazkal](https://www.reddit.com/r/freebsd/comments/jl04tu/realtek_rtl8188cus_usb_80211n_wifi_review/gamsaog/) 提醒我，FreeBSD 上的 **rtwn(4)** 驱动仍不支持 802.11n 协议。

它仍停留在 802.11g 的“中世纪”传输水平。

## 更新 2 – 意外好处

虽然我很少使用或安装 Windows 系统，但我发现了 **Realtek RTL8188CUS** USB WiFi 适配器的新用途……例如在 Windows 10 全新安装后，原有 WiFi 卡可能“无法使用”，因为没有可用驱动。

这时，这个小巧的设备就非常有用——只需插入，运行 **Windows 更新** 获取所需的驱动和更新，无需查找设备 ID 或从 USB 驱动手动安装。


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://translated-articles.bsdcn.org/2025-nian/realtek-usb-wifi-review.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
