Wi-Fi
Ez a cikk egy Wi-Fi (vezeték nélküli) hálózati eszköz beállítását írja le.
Wi-Fi a telepítés közben
Ha Wi-Fi kapcsolatra van szükség a Gentoo telepítése közben, akkor vegye figyelembe, hogy a Gentoo minimális telepítő CD-n korlátozott számú illesztőprogram áll rendelkezésre, és csak a wpa_cli (és ne a wpa_gui) értéket adja meg a WPA/WPA2/Enterprise kapcsolatok beállításához.
Ha a minimális telepítő CD nem tartalmazza a szükséges illesztőprogramokat, vagy a wpa_supplicant grafikus felületét részesíti előnyben, akkor válasszon egy másik Live CD-t, például a System Rescue CD-t. Ne feledje, hogy ha nem Gentoo Live CD-t használ, akkor néhány speciális lépésre lehet szüksége.
Hardver észlelése
Először észlelni kell a Wi-Fi vezérlőket. Az lspci vagy az lsusb parancssori eszközök, amelyek használhatók ehhez a feladathoz.
Ha egy Linux (LiveCD/USB) van elindítva, ami Wi-Fi kapcsolatot létesít:
root #
lspci -k
Az illesztőprogramot a Kernel driver in use:
karakterlánccal kezdődő sorok egyike azonosítja.
Ha a beindított rendszer nem hoz létre Wi-Fi kapcsolatot, akkor szerezze be a hardverazonosítók teljes listáját az aktuális rendszerből. Ez a lista később felhasználható a megfelelő illesztőprogram azonosítására:
root #
lspci -n
Másolja ki a PCIID listát amit a parancs előállított.
Az USB eszközök esetében hasonló megközelítés alkalmazható. Először szerezze meg a rendszeren észlelt USB-eszközök listáját:
user $
lsusb
Ez a parancs előállítja a rendszerhez csatlakoztatott minden USB-eszköz PCI azonosítóját, gyártóját, gyártmányát, modelljét és/vagy lapkakészletét. Ezek közül a lapkakészlet (chipset) lehet a leghasznosabb információ. Gyakran a legrövidebb módszer az USB NIC illesztőprogram és firmware nevének megtalálására az interneten történő linuxwireless.org <chipset> keresés.
Alternatívaként az lshw használható a szükséges információk megszerzésére:
root #
lshw | grep -i driver | perl -pe 's/^.*driver=(\S+).*$/$1/g;' | sort -u
Ez a parancs létrehozza az összes illesztőprogram listáját, függetlenül attól, hogy az eszköz PCI vagy USB alapú.
Kernel
Itt az ideje beállítani a Linux kernelt a beazonosított illesztőprogramokkal.
IEEE 802.11
Aktiválja legalább a cfg80211-et (CONFIG_CFG80211) és a mac80211-et (CONFIG_MAC80211)
[*] Networking support --->
[*] Wireless --->
<M> cfg80211 - wireless configuration API
[ ] nl80211 testmode command
[ ] enable developer warnings
[ ] cfg80211 certification onus
[*] enable powersave by default
[ ] cfg80211 DebugFS entries
[ ] support CRDA
[ ] cfg80211 wireless extensions compatibility
<M> Generic IEEE 802.11 Networking Stack (mac80211)
[*] Minstrel
[*] Minstrel 802.11n support
[ ] Minstrel 802.11ac support
Default rate control algorithm (Minstrel) --->
[ ] Enable mac80211 mesh networking (pre-802.11s) support
-*- Enable LED triggers
[ ] Export mac80211 internals in DebugFS
[ ] Trace all mac80211 debug messages
[ ] Select mac80211 debugging features ----
Minstrel és 802.11n támogatása egy sebességvezérlő algoritmus. Engedélyezni kell egyes vezeték nélküli illesztőprogramokhoz.
Ha a vezeték nélküli konfigurációs API (CONFIG_CFG80211) modul (
<M>
) helyett közvetlen a kernelbe van beépítve (<*>), akkor az illesztőprogram nem tudja betölteni a regulatory.db fájlt a /lib/firmware fájlból, ami a domain támogatás szabályozásának a meghibásodását eredményezi. Kérjük, állítsa be a CONFIG_CFG80211=m értéket, vagy adja hozzá a regulatory.db-t és a regulatory.db.p7s-t (a net-wireless/wireless-regdb-ből) a CONFIG_EXTRA_FIRMWARE-hez.WEXT
A "cfg80211 vezeték nélküli bővítményekkel kompatibilitás" opció, más néven wext (wireless extensions), támogatja a régi vezeték nélküli eszközöket és az iwconfig-ot.
[*] Networking support --->
[*] Wireless --->
[*] cfg80211 wireless extensions compatibility
Eszközmeghajtók
Ezután a megfelelő kernelbeállításokat kell engedélyezni a korábban észlelt illesztőprogramok és hardverek alapján. A javaslat az, hogy az illesztőprogramokat modulként kell lefordítani. Ha a vezeték nélküli hálózat WPA vagy WPA2 titkosítást használ, akkor mindenképpen engedélyezze az AES titkosítás támogatását a kernelben.
Device Drivers --->
[*] Network device support --->
[*] Wireless LAN --->
Select the driver for your Wifi network device, e.g.:
<M> Broadcom 43xx wireless support (mac80211 stack) (b43)
[M] Support for 802.11n (N-PHY) devices
[M] Support for low-power (LP-PHY) devices
[M] Support for HT-PHY (high throughput) devices
<M> Intel Wireless WiFi Next Gen AGN - Wireless-N/Advanced-N/Ultimate-N (iwlwifi)
<M> Intel Wireless WiFi DVM Firmware support
<M> Intel Wireless WiFi MVM Firmware support
<M> Intel Wireless WiFi 4965AGN (iwl4965)
<M> Intel PRO/Wireless 3945ABG/BG Network Connection (iwl3945)
<M> Ralink driver support --->
<M> Ralink rt27xx/rt28xx/rt30xx (USB) support (rt2800usb)
-*- Cryptographic API --->
Accelerated Cryptographic Algorithms for CPU (x86) --->
<*> Ciphers: AES, modes: ECB, CBC, CTS, CTR, XTR, XTS, GCM (AES-NI)
Abban az esetben, ha az illesztőprogram modulként (
<M>
) helyett a kernelbe van beépítve (<*>
), akkor a firmware-t is be kell építeni a kernelbe. Ne felejtse el újraépíteni a rendszermagot a konfiguráció megváltoztatása után.LED támogatás
A különböző csomagfogadási/csomagküldési események LED triggereinek engedélyezéséhez a kernelt a következő opciókkal fordítsa le:
Device Drivers --->
[*] LED Support --->
<*> LED Class Support
[*] Networking support --->
[*] Wireless --->
[*] Enable LED triggers
Firmware
A kernel-illesztőprogramon kívül egyes lapkakészletekhez (főleg a modernekhez) firmware is szükséges. Ha szükséges, akkor keresse meg azt a következő listában, és telepítse:
root #
emerge --ask sys-kernel/linux-firmware
Wi-Fi eszköz | Driver | Firmware | Megjegyzés |
---|---|---|---|
Atheros AR9271 & AR7010 | ath9k_htc | sys-kernel/linux-firmware | |
Broadcom 43xx wireless support | b43 / b43legacy | sys-firmware/b43-firmware | Aircrack-ng ready, most probably the best choice when a bcm43xx device is supported |
Broadcom PCIe and SDIO/USB devices | brcmsmac / brcmfmac | sys-kernel/linux-firmware | Lacks powersaving, LED support and other features |
Broadcom 43xx wireless support | wl | net-wireless/broadcom-sta | Proprietary, no AP or Monitor modes, Comparison of bcm43xx drivers |
Intel PRO/Wireless 2200BG | ipw2200 | sys-firmware/ipw2200-firmware | |
Intel PRO/Wireless 3945ABG/BG | iwlegacy | sys-kernel/linux-firmware | |
Intel Wireless WiFi 4965AGN | iwl4965 | sys-kernel/linux-firmware | |
All other Intel Wireless devices | iwlwifi | sys-kernel/linux-firmware | See the iwlwifi article for detailed instructions. |
Qualcomm Atheros QCA6174 | ath10k_pci | ath10k-firmware | See Qualcomm Atheros QCA6174 |
Ralink/MediaTek USB devices | e.g. rt2800usb | sys-kernel/linux-firmware | |
Realtek RTL8191SE & RTL8192SE | rtl8192se | sys-kernel/linux-firmware | |
Realtek 8723AU/8723BU/8191EU/8192EU/8188EU/8188RU | rtl8xxxu | sys-kernel/linux-firmware | May need the CONFIG_RTL8XXXU_UNTESTED kernel option to find all devices. Only those verified by kernel developers are enabled by default. |
Ha az illesztőprogram firmware-t igényel, de nem jelenik meg a listán, akkor manuálisan kell letöltenie és elhelyezni a /lib/firmware mappába.
Hálózati eszközök nevei
This section is obsolete. See Udev#Optional: Disable_or_override_predictable_network_interface_naming for updated instructions.
Network device names such as eth0 or wlan0 as provided by the kernel are normally changed on system boot (see dmesg) by the /lib/udev/rules.d/80-net-name-slot.rules udev rule.
To keep the classic naming this rule can be overwritten with an equally named empty file in the /etc/udev/rules.d directory:
root #
touch /etc/udev/rules.d/80-net-name-slot.rules
Wireless supplicant
Ha a vezeték nélküli hálózat WPA-val vagy WPA2-vel van levédve, akkor olyan wireless supplicant-ot kell használni, mint például a wpa_supplicant vagy az iwd. További információért a vezeték nélküli hálózat konfigurálásával kapcsolatban a Gentoo Linux rendszerben olvassa el a Gentoo kézikönyv vezeték nélküli hálózatokról szóló fejezetét.
Testing
After a reboot with the new kernel or after loading the modules, the device can be checked for availability by using following methods:
- Using the /sys file system
- Using the ip command
- Using the ifconfig command
- Using the iw command
/sys file system
Get the device name by listing the /sys/class/net directory contents using ls -al or the tree command (provided by the app-text/tree package):
user $
tree /sys/class/net
/sys/class/net/ ├── enp2s14 -> ../../devices/pci0000:00/0000:00:1e.0/0000:02:0e.0/net/enp2s14 ├── lo -> ../../devices/virtual/net/lo ├── sit0 -> ../../devices/virtual/net/sit0 └── wlp8s0 -> ../../devices/pci0000:00/0000:00:1c.0/0000:08:00.0/net/wlp8s0
ip command
To obtain the device name and verify that the wireless card is detected, execute the following ip command:
user $
ip addr
3: wlan0: ...
ifconfig command
The ifconfig command is provided through the sys-apps/net-tools package. Use ifconfig -a to list all detected network cards, even those that are not enabled/active yet:
user $
ifconfig -a
wlan0 ...
A network card can be activated as follows:
root #
ifconfig -v wlan0 up
SIOCSIFFLAGS: Operation not possible due to RF-kill WARNING: at least one error occurred. (-1)
In this example, enabling the wireless card failed as a radio frequency kill state is set (usually to keep power consumption at bay and not connect by accident to a wireless network).
iw command
If the wireless network card driver supports the nl80211 stack, then the iw command as offered by the net-wireless/iw package can show the detected wireless cards:
root #
iw dev
phy#0 Interface wlan0 ifindex 4 type managed
dmesg
Ellenőrizze a dmesg kimenetet.
user $
dmesg | grep -i -E 'xx:xx.x|wlan|iwl|80211'
Feltétlenül cserélje ki:
xx:xx.x
jelölést az lspci-ból kiolvasható PCIID azonosítóval,wlan
nevet az Ön saját hálózati interfészének a nevével, és aziwl
nevet arra amit a kernel illesztőprogram használ.
Hibaelhárítás
Hiányzó firmware keresése
Rendszerindításkor a kernel minden egyes kártyához megpróbálja megvizsgálni a firmware-t. Ezt lehet felfedezni, ha a dmesg vagy a journalctl (systemd) kimenetét megfigyeljük az aktuális rendszerindításkor.
user $
journalctl -b 0 --dmesg | grep -i firmware
Oct 05 14:51:09 maffbook kernel: Spectre V2 : Enabling Restricted Speculation for firmware calls Oct 05 14:51:09 maffbook kernel: ACPI: [Firmware Bug]: BIOS _OSI(Linux) query ignored Oct 05 14:51:09 maffbook kernel: sgx: [Firmware Bug]: Unable to map EPC section to online node. Fallback to the NUMA node 0. Oct 05 14:51:09 maffbook kernel: i915 0000:00:02.0: [drm] Finished loading DMC firmware i915/kbl_dmc_ver1_04.bin (v1.4) Oct 05 14:51:09 maffbook kernel: ACPI: video: [Firmware Bug]: ACPI(PEGP) defines _DOD but not _DOS Oct 05 14:51:09 maffbook kernel: iwlwifi 0000:00:14.3: loaded firmware version 46.6b541b68.0 9000-pu-b0-jf-b0-46.ucode op_mode iwlmvm Oct 05 14:51:09 maffbook kernel: psmouse serio1: elantech: assuming hardware version 4 (with firmware version 0x5f2001) Oct 05 14:51:09 maffbook kernel: Bluetooth: hci0: Firmware revision 0.1 build 6 week 12 2021 Oct 06 17:26:26 maffbook kernel: Bluetooth: hci0: Minimum firmware build 1 week 10 2014 Oct 06 17:26:26 maffbook kernel: Bluetooth: hci0: Found device firmware: intel/ibt-17-16-1.sfi Oct 06 17:26:28 maffbook kernel: Bluetooth: hci0: Waiting for firmware download to complete Oct 06 17:26:28 maffbook kernel: Bluetooth: hci0: Firmware loaded in 1484394 usecs Oct 06 17:26:28 maffbook kernel: Bluetooth: hci0: Firmware revision 0.1 build 6 week 12 2021
A Wi-Fi adapter nem találja az 5 GHz-es hálózatot és nem csatlakozik hozzá
Egyes WPA vagy WPA2 hálózatok továbbra is az régebbi, elavult TKIP protokollt használják az AES helyett a internetes csatlakozáshoz. Próbálja meg telepíteni a net-wireless/wpa_supplicant csomagot a tkip USE flag használatával, és indítsd újra a rendszert.
Fórumbejegyzések
Fórumbejegyzés: A vezeték nélküli LAN nem tudja megkapni az IP-t a hozzáférési ponttól, ami azt magyarázza, hogy a 169.254.x.x (link local címek) nem jó IP-címek.
További olvasnivaló a témában
- Handbook:AMD64/Networking/Wireless
- AC1200 Wireless Adapters - AC1200 vezeték nélküli adapterek.
- Iproute2 — a tool developed to unify network interface configuration, routing, and tunneling for Linux systems. - Egy eszköz, amelyet a Linux alapú rendszerek hálózati interfész konfigurációjának, útválasztásának és alagútkezelésének egységesítésére fejlesztettek ki.
- Iwlwifi — the wireless driver for Intel's current wireless chips. - Az Intel jelenlegi vezeték nélküli chipjeinek vezeték nélküli illesztőprogramja.
- Qualcomm Atheros QCA6174 — a 802.11ac Wireless Network Adapter which is used in some laptops. - Vezeték nélküli hálózati adapter, amelyet egyes laptopokban használnak.