Giỏ hàng hiện tại chưa có sản phẩm nào!
Better WiFi on FreeBSD with Wifibox
I used to run FreeBSD on my PC with an Ethernet connection, it was perfect without WiFi.
I was install FreeBSD on my laptop recently because I need to bring it with me on the way to my hometown.
The WiFi card on my laptop (Intel® Dual Band Wireless-AC 3160) is supported by FreeBSD (iwm, iwlwifi).
Unfortunately the driver (iwm, iwlwifi) did works but it was terrible slow and unreliable.
Then I found Wifibox from this report. I found some tutorials on internet too:
- Wifibox on my GhostBSD laptop
- 802.11ac on FreeBSD with wifibox
- My wifibox setup
- WifiBox FreeBSD setup, Use Alpine Linux Wifi driver software
I was follow the first one. The setup was quite straight, it works perfect now.
I put wifibox_restart.sh in i3 config because I’m using FreeBSD+i3wm instead of GhostBSD. Maybe I’ll move it to cron.
$ doas pciconf -lv | grep -B3 -i wireless
subclass = SMBus
ppt0@pci0:6:0:0: class=0x028000 rev=0x83 hdr=0x00 vendor=0x8086 device=0x08b3 subvendor=0x8086 subdevice=0x8470
vendor = 'Intel Corporation'
device = 'Wireless 3160'
$ cat /usr/local/etc/wifibox/bhyve.conf
# These are the default values for launching the bhyve(8) guest,
# please revisit them.
# Number of virtual CPUs allocated for the guest, which determines the
# count of concurrent execution threads.
cpus=1
# Maximum amount of memory allocated for the guest. This is rather a
# conservative default, and it is worth considering to lower this
# value when possible.
memory=128M
# Change this to `yes` to activate the nmdm(4)-based console. Usually
# this is not needed hence it is disabled by default.
console=yes
# The value of `passthru` has to match with the slot/bus/function of
# the wireless PCI device, which can be obtained from the output of
# the pciconf(8) tool. THIS MUST BE SET otherwise the device will not
# be visible for the guest. Expected format: "s/b/f", e.g."3/0/0" for
# the `pci0:3:0:0` device.
passthru=6/0/0
$ cat /etc/rc.conf
linux_enable="YES"
***
# wlan0 using wifibox
wifibox_enable="YES"
devmatch_enable="YES"
devmatch_blocklist="if_iwm if_iwlwifi"
ifconfig_wifibox0="SYNCDHCP"
background_dhclient_wifibox0="YES"
defaultroute_delay="0"
$ cat /usr/local/etc/wifibox/core.conf
# These are the default values that control the overall behavior of
# wifibox.
# Level of logging. Verbosity increases in the following order.
#
# - none: No messages are either displayed or logged.
# - error: Only error messages are displayed and logged.
# - warn: Error and warning messages are displayed and logged. That
# is the default.
# - info: Besides error and warning messages, informative messages
# about the execution are logged.
# - debug: In addition to errors, warnings, and informative messages,
# some extra information about the program's state is logged.
# Useful for troubleshooting, but mostly makes sense when
# read together with the source code.
loglevel=warn
$ cat /usr/local/etc/wifibox/wpa_supplicant/wpa_supplicant.conf
# This is a placeholder file. On how to create one, consult
# /usr/share/examples/etc/wpa_supplicant.conf or import an existing one
# from the /etc directory.
# Mind that the `ctrl_interface` parameter, when in use, has to be
# kept in sync with UDS pass-through definitions in uds_passthru.conf.
# The default values are aligned with these settings below.
#
#ctrl_interface=/var/run/wpa_supplicant
#ctrl_interface_group=0
#
# It is also recommended to enable write access for the clients that
# are connecting to wpa_supplicant from the host through the forwarded
# control socket.
#
#update_config=1
network={
ssid="********"
psk="********"
}
$ cat service/wifibox_restart.sh
#!/bin/sh
doas service routing restart
doas service netif restart wifibox0
Để lại một bình luận