Raspbian에서 USB를 통해 RTL8188CUS에 대한 모니터링 모드 활성화


15

라즈베리 파이 모델 b + (또는 그 문제에 대한 라즈베리 파이)에서 RTL8188CUS 칩셋으로 USB 와이파이 동글에 대한 모니터링 모드를 활성화하려고합니다.

$ lsusb
Bus 001 Device 005: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter
$ sudo iwconfig wlan0 mode monitor
Error for wireless request "Set Mode" (8B06) :
    SET failed on device wlan0 ; Invalid argument.

에 따르면 GitHub의 / 라즈베리 파이 / 리눅스 문제 / 369 / , 커널 배포판에 포함되어 있지만, 컴파일되지 않은 rtlwifi을 / rtl8192cu 커널 모듈을 활성화해야합니다. 아래 'STEP 2'에 나와있는 것처럼 일부 파일을 약간 수정해야합니다.

해당 스레드에서 언급 된 USB 문제는 4.1.6 이상에서 해결되었으므로 rtlwifi 드라이버가 작동해야합니다.

신선한 라즈베리 파이 (모델 B +)를 재현하는 단계 ...

0 단계 : 기존 모듈 및 커널을 최신으로 업데이트

$ sudo apt-get update
$ sudo rpi-update
$ uname -a
Linux raspberrypi 4.1.7+ #815 PREEMPT Thu Sep 17 17:59:24 BST 2015 armv6l GNU/Linux

1 단계 : Raspbian 커널 소스를 가져 와서 누락 된 종속성 추가

$ git clone --depth=1 https://github.com/raspberrypi/linux
$ sudo apt-get install bc lshw

2 단계 : RTL8188CUS에 대한 rtlwifi (커널) 드라이버 활성화 (RTL8192)

edit linux/drivers/net/wireless/Kconfig
-#source "drivers/net/wireless/rtlwifi/Kconfig"
-source "drivers/net/wireless/rtl8192cu/Kconfig"
+source "drivers/net/wireless/rtlwifi/Kconfig"
+#source "drivers/net/wireless/rtl8192cu/Kconfig"

edit linux/drivers/net/wireless/Makefile
-#obj-$(CONFIG_RTLWIFI)         += rtlwifi/
+obj-$(CONFIG_RTLWIFI)          += rtlwifi/

3 단계 : 커널 컴파일 및 설치 (많은 시간이 소요됨)

커널 빌드 문서 에서 요약되었습니다 .

$ cd linux
$ KERNEL=kernel
$ make bcmrpi_defconfig

$ make zImage modules dtbs
$ sudo make modules_install
$ sudo cp arch/arm/boot/dts/*.dtb /boot/
$ sudo cp arch/arm/boot/dts/overlays/*.dtb* /boot/overlays/
$ sudo cp arch/arm/boot/dts/overlays/README /boot/overlays/
$ sudo scripts/mkknlimg arch/arm/boot/zImage /boot/$KERNEL.img

4 단계 : 재부팅

$ sudo reboot

5 단계 : rtlwifi / rtl8192cu 모듈이로드되어 있는지 확인

$ lsmod | fgrep rtl8192cu
rtl8192cu             100806  0 
rtl_usb                14781  1 rtl8192cu
rtl8192c_common        72091  1 rtl8192cu
rtlwifi               101122  3 rtl_usb,rtl8192c_common,rtl8192cu
mac80211              623281  3 rtl_usb,rtlwifi,rtl8192cu
$
$ lshw
  *-network:0
       description: Ethernet interface
       physical id: 1
       bus info: usb@1:1.3
       logical name: wlan0
       serial: 00:0b:81:94:e9:a3
       capabilities: ethernet physical
       configuration: broadcast=yes driver=rtl8192cu driverversion=4.1.7+ firmware=N/A link=no multicast=yes

6 단계 : 모니터링 모드 활성화

$ sudo iwconfig wlan0 mode monitor
Error for wireless request "Set Mode" (8B06) :
    SET failed on device wlan0 ; Operation not supported.

내가 놓친 게 무엇입니까?
문제 369는 rtlwifi 드라이버와 함께 작동 할 수 있음을 나타냅니다.


이것은 매우 도움이되었습니다. 나는 단계를 거의 정확하게 따르고 매력처럼 작동했습니다.
— Alex Nichol

IMHO는 인내심에 대한 모든 존중과 보너스 포인트를 가지고 있기 때문에 다소 번거 롭습니다. 참조 여기에 당신이 배송비 포함 5 달러 아래를 들어, 상자 밖으로 칩셋이 지원하는 모니터 모드 와이파이 동글을 얻을 수 있습니다.
— RolfBly 2016 년

답변:


8

rtlwifi 모듈을 다시 컴파일하고로드하는 단계가 올바른지 확인하십시오. 문제는이 상황에서 iwconfig가 모니터링 모드를 활성화 / 결정하기 위해 작동하지 않는 것입니다.

대신 Steven Gordon이 설명한대로 iw를 사용 했으며 효과가있었습니다.

요약:

6b 단계 : 사용 가능한 물리적 네트워크 인터페이스 나열

$ iw dev

7 단계 : 물리적 인터페이스가 모니터링 모드를 지원하는지 확인

$ iw phy phy0 info
... lots of stuff ...
Supported interface modes:
     * IBSS
     * managed
     * AP
     * AP/VLAN
     * monitor
     * mesh point
     * P2P-client
     * P2P-GO
... lots more stuff ...

8 단계 : 해당 물리적 ​​카드에 모니터링 인터페이스 추가

보유하고있는 하드웨어에 대해 '모니터링'인터페이스를 명시 적으로 추가해야합니다.

$ sudo iw phy phy0 interface add mon0 type monitor

8 단계 : 모니터링 시작

필자의 경우, 모니터링을 용이하게하기 위해 tshark를 사용하여 많은 노이즈가 아닌 몇 가지 유용한 필드를 표시합니다.

$ sudo apt-get install tshark
$ sudo tshark -i mon0 -f 'broadcast' -T fields -e frame.time_epoch -e wlan.sa -e radiotap.dbm_antsignal -e wlan.fc.type -e wlan.fc.subtype

끝난.


귀하의 링크가 끊어졌으며 마지막 몇 글자가 누락되었습니다 : sandilands.info/sgordon/capturing-wifi-in-monitor-mode-with-iw (게시물을 편집하려고했지만 분명히 편집은 6 자 이상이어야합니다. ..)
— Ted Mielczarek

2 단계에서해야 할 일을 이해하지 못합니다 // 도움이 필요합니다.
— Ray Kodiak

1 단계에서 복제 한 git repo ( 'linux'디렉토리)에서 ... 'linux / drivers / net / wireless / Kconfig'파일을 편집하고 rtl8192cu로 두 줄을 주석으로 처리하십시오. 줄의 시작. 'linux / drivers / net / wireless / Makefile'파일을 편집하고 rtl8192cu로 한 줄을 주석 처리하고 rtlwifi로 줄을 주석 해제하십시오.
— Matt M

0

훌륭한 지침. 감사합니다. 내가해야 할 일이 몇 가지 더 있습니다 ...

  1. 새 이미지 (4.9.13-v7 +)로 라즈베리 파이 3을 재부팅 할 때, rtl8192cu 디렉토리가 /lib/modules/4.9.13-v7+/kernel/drivers/net/wireless/realtek에 있지만 lsmod가 rtl8192cu를 나열했습니다. / rtlwifi / rtl8192cu 솔루션 : sudo modprobe rtl8192cu를 수행해야했습니다.

  2. iwconfig jsut는 AP에 능동적으로 연결된 인터페이스에서도 "무선 확장 없음"이라고 말합니다. 대신 iw를 사용하고 있습니다. http://linuxwireless.org/en/users/Documentation/iw/__v41.html의 지침을 참조하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.