WiFi

From Gentoo Wiki
Jump to: navigation, search
This page is a translated version of the page Wifi and the translation is 51% complete.

Outdated translations are marked like this.
Other languages:
English • ‎español • ‎русский • ‎中文(中国大陆)‎ • ‎日本語 • ‎한국어

Warning: Display title "WiFi" overrides earlier display title "Wifi/ko".

Resources

이 게시글은 WiFi 네트워크 장치 설정 방법을 다룹니다.

젠투를 설치할 때 WiFI 연결이 필요할 경우 젠투 소형 설치 CD에 제한된 종류의 드라이버와 WPA/WPA2/기업용 연결 설정 도구 wpa_cli(wpa_gui 아님) 가 있음을 참고하십시오.

소형 설치 CD에 필요한 드라이버 또는 wpa_supplicant 의 그래픽 프론트엔드가 없다면, 시스템 복구 CD와 같은 기타 라이브 CD를 마련하십시오. 젠투 라이브 CD가 아닌 경우 특별한 과정이 필요합니다.

하드웨어 감지

우선 무선 네트워크 컨트롤러를 찾으십시오. lspci 명령 또는 lsusb 명령은 이 과정에 활용할 수 있는 명령행 도구입니다.

리눅스(LiveCD/USB)를 부팅하여 무선 네트워크에 연결하면:

root #lspci -k

Kernel driver in use:에서 드라이버가 나타납니다.

부팅 시스템에서 무선 네트워크에 연결하지 않는다면 현재 시스템의 모든 하드웨어 식별 목록을 확인하십시오. 이 목록은 나중에 적절한 드라이버를 찾는데 활용할 수 있습니다:

root #lspci -n

명령에서 나타내는 PCIID 목록을 복사한 후 http://kmuto.jp/debian/hcl/ 에 붙여넣으십시오.

USB 장치에 대해 동일한 접근 방식을 취할 수 있습니다. 우선 시스템에서 발견한 USB 장치 목록을 확인하십시오:

user $lsusb

이 명령은 PCI ID, 제조사, 제조, 모델, 시스템에 붙은 모든 USB 장치 칩셋을 나타냅니다. 여기서 칩셋 정보는 상당히 쓸만한 정보가 될 수 있습니다. linuxwireless.org <chipset>으로 구글에서 검색하면 보통 USB NIC 드라이버 및 펌웨어 이름을 간단하게 금방 찾을 수 있습니다.

대신, lshw 명령을 활용하여 필요한 정보를 확인할 수 있습니다:

root #lshw | grep -i driver

이 명령은 PCI 또는 USB 기반에 상관 없이 모든 드라이버 목록을 보여줍니다.

Kernel

드라이버를 확인했으면, 리눅스 커널을 설정할 차례죠.

IEEE 802.11

최소한 cfg80211mac80211 모듈을 활성화하십시오. 일부 무선 통신 드라이버에서는 전송률 제어 알고리즘도 필요합니다.

커널 linux-4.1
[*] Networking support  --->
    [*] Wireless  --->
        <*>   cfg80211 - wireless configuration API
        [ ]     nl80211 testmode command
        [ ]     enable developer warnings
        [ ]     cfg80211 regulatory debugging
        [ ]     cfg80211 certification onus
        [*]     enable powersave by default
        [ ]     cfg80211 DebugFS entries
        [ ]     use statically compiled regulatory rules database
        [ ]     cfg80211 wireless extensions compatibility
        <*>   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과 Minstrel의 802.11n 지원 항목은 전송률 제어 알고리즘 입니다.

중요
In case the wireless configuration API (CONFIG_CFG80211) is built into the kernel (<*>) instead as a module (<M>), the driver won't be able to load regulatory.db from /lib/firmware resulting in broken regulatory domain support. Please set CONFIG_CFG80211=m or add regulatory.db and regulatory.db.p7s to CONFIG_EXTRA_FIRMWARE.

WEXT

WEXT라고도 하는 "cfg80211 무선 확장 호환성" 옵션은 이전의 wireless-toolsiwconfig를 지원합니다.

커널
[*] Networking support  --->
    [*] Wireless  --->
        [*]     cfg80211 wireless extensions compatibility

장치 드라이버

다음, 앞서 드라이버와 하드웨어를 발견한대로 각각의 적절한 커널 옵션을 활성화해야합니다. 추천 방식모듈 방식의 드라이버를 빌드하는 방법입니다. 또한 무선 네트워크 카드에서 WPA 또는 WPA2 암호화를 활용한다면 커널에서 AES 암호화를 지원하도록 활성화했는지 확인하십시오.

커널
    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 --->
    -*- AES cipher algorithms
    -*- AES cipher algorithms (x86_64)
    <*> AES cipher algorithms (AES-NI)
중요
드라이버를 모듈(<M>)로 빌드하는 대신, 커널에 넣어(<*>) 빌드하면, 펌웨어도 마찬가지로 커널에 넣어야 합니다.
잊지 마시고, 설정을 바꾼 다음 커널을 다시 빌드 하십시오.

LED 지원

패킷 수신/전송 활동에 대한 LED 동작을 활성화하려면 다음 옵션을 넣어 커널을 컴파일하십시오:

커널
Device Drivers  --->
    [*] LED Support  --->
        <*>   LED Class Support
 
[*] Networking support  --->
    [*] Wireless  --->
        [*] Enable LED triggers

펌웨어

커널 드라이버 말고도, 일부 칩셋에서는 펌웨어가 필요합니다. 필요하다면, 다음 목록을 가리킨 후 설치하십시오:

root #emerge --ask sys-kernel/linux-firmware
무선 네트워크 장치 드라이버 펌 웨 어 참고
Atheros AR9271 & AR7010 ath9k_htc sys-kernel/linux-firmware
Broadcom 43xx wireless support b43 / b43legacy sys-firmware/b43-firmware Aircrack-ng 준비됨, 아마도bcm43xx 장치에서 지원한다면 가장 현명한 선택일듯
Broadcom PCIe and SDIO/USB devices brcmsmac / brcmfmac sys-kernel/linux-firmware 전원 절약, LED 지원 및 기타 기능 빠짐
Broadcom 43xx wireless support wl net-wireless/broadcom-sta 상업용, AP 또는 Monitor 모드 없음, bcm43xx 드라이버 비교
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 자세한 활용 절치는iwlwifi 게시글 참고
Ralink/MediaTek USB devices e.g. rt2800usb sys-kernel/linux-firmware
Realtek RTL8191SE & RTL8192SE rtl8192se sys-kernel/linux-firmware

드라이버에서 펌웨어를 요구하지만 목록에 없다면 직접 다운로드하여 /lib/firmware 디렉터리에 넣어야 합니다.

Network device names

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

WPA supplicant

무선 네트워크를 WPA 또는 WPA2로 설정하면, wpa_supplicant를 활용해야합니다. 젠투 리눅스에서 무선 네트워크를 설정하는데 필요한 정보를 찾는다면, 젠투 핸드북의 무선 네트워크 장을 읽어보십시오.


시험

새 커널로 다시 부팅했거나 모듈을 불러온 후라면, 다음 방식으로 장치 가용성을 확인해볼 수 있습니다:

/sys 파일 시스템

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 명령

장치 이름을 가져오고 무선 네트워크 카드를 발견했는지 확인하려면, 다음 ip command 명령을 실행하십시오:

user $ip addr
3: wlan0:   ...

ifconfig 명령

ifconfig 명령은 sys-apps/net-tools 꾸러미에 들어있습니다. 발견한 모든 네트워크 카드와 아직 활성화하지 않았는지 여부를 확인하려면 ifconfig -a 명령을 활용하십시오:

user $ifconfig -a
wlan0     ...

네트워크 카드는 다음과 같이 활성화할 수 있습니다:

root #ifconfig -v wlan0 up
SIOCSIFFLAGS: Operation not possible due to RF-kill
WARNING: at least one error occurred. (-1)

이 예제에서, 무선 주파수 강제 종료 상태를 설정하여 무선 네트워크 카드 활성화에 실패했습니다(보통 베이의 전력 소모 상태를 유지하고 무선 네트워크에 갑작스럽게 연결하지 않는 증상).

iw 명령

무선 네트워크 카드 드라이버에서 nl80211 스택을 지원하면 net-wireless/iw 꾸러미에서 제공하는 iw 명령에서 발견한 무선 네트워크 카드를 보여줄 수 있습니다:

root #iw dev
   phy#0
	Interface wlan0
		ifindex 4
		type managed

dmesg

이 방식으로도 동작하지 않으면 dmesg 출력에서 오류를 확인하십시오. 커널 드라이버 또는 모듈을 제대로 불러오지 않았을 수도 있습니다:

user $dmesg

Be sure to replace

문제 해결

추가 참조

외부 자료