일반 사용자가 Wi-Fi frame을 볼 일은 거의 없다. 아마도 이 글을 Wi-Fi 관련 연구자나 개발자가 보면 도움이 될 것이다.
Windows 상에서 Wi-Fi frame을 제대로 잡기 위해서는 상당한 금액의 omnipeek이나 별도의 Wi-Fi USB dongle을 구매해야 하는 wireshark를 사용할 것이다. 이외에도 몇가지 방법은 있지만 잘 안되는 경우가 많은 것 같다.
하지만 Linux 에서는 kernel 에서 monitor mode라고 해서 Wi-Fi sniffing을 지원하고 있다. (해당 기능은 mac80211에서 지원 하는 것으로 너무 오래된 구형 Wi-Fi driver에서는 동작하지 않는다.)
Built-in Wi-Fi이건 USB Wi-Fi dongle이건 배포판에 상관없이 Linux가 준비되어 있고, 해당 Linux에서 정상적으로 Wi-Fi를 사용하고 있다면 Wi-Fi frame을 air 상에서 잡을 준비가 된 것이다.
Wi-Fi frame을 잡기 위한 절차는 다음과 같다. (Wi-Fi mode를 바꾸는 일임으로 root 권한이 필요하다.)
1. 우선 현재 Wi-Fi mode를 확인해 보자
iwconfig를 하면 Mode가 Managed인 것을 확인할 수 있다. 일반 Wi-Fi mode일 경우 managed로 표시된다.
root@User:~# iwconfig
eth0 no wireless extensions.
wlan0 IEEE 802.11abgn ESSID:off/any
Mode:Managed Access Point: Not-Associated Tx-Power=20 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Encryption key:off
Power Management:off
lo no wireless extensions.
2. Wi-Fi interface를 내리고 monitor mode로 변환한 후 다시 interface 를 올린다.
root@User:~# ifconfig wlan0 down
root@User:~# iwconfig wlan0 mode monitor
root@User:~# ifconfig wlan0 up
3. Wi-Fi mode를 다시 확인해 본다.
아래와 같이 monitor로 mode가 변한 것을 확인할 수 있다.
root@User:~# iwconfig
eth0 no wireless extensions.
wlan0 IEEE 802.11abgn Mode:Monitor Frequency:2.412 GHz Tx-Power=20 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Power Management:off
lo no wireless extensions.
4. Wi-Fi mode가 sniffing을 위한 mode로 변환되었음으로 wireshark를 실행한다.
root@User:~# wireshark &
5. sniffing을 위한 interface로 wlan0을 선택하고, Start 버튼을 누른다.
6. sniffing을 시작하면 바로 frame이 capture된다. 기본 설정으로 1번 channel의 frame들이 올라오기 시작한다.
7. Wi-Fi sniffing 화면에 알맞게 channel을 표시해 주는 column은 다음과 같이 추가한다.
Column 에서 마우스 오른 버튼을 눌러 popup menu를 띄우고, "Column Preferences..." 를 선택한다.
8. "Add" 버튼을 눌러 column 항목을 하나 추가하고, 해당 항목을 선택한 뒤, "Field type"으로 "Frequency/Channel" 을 선택한다.
9. 화면에 보면 Channel column이 추가된 것을 확인할 수 있고, capture된 frame의 frequency 및 channel 번호를 볼 수 있다.
10. 채널을 바꾸기 위한 메뉴를 추가하면 다음과 같다.
메뉴 중 "View" > "Wireless Toolbar" 를 선택한다.
11. 상단 바에 Wireless를 위한 새로운 toolbar가 하나 추가된다.
"Frequency" combo box에서 capture하기 원하는 frequency를 선택하면 바로 해당 frequency 의 frame들이 capture된다.
아직 linux에서 11ac가 되는 제품을 보유하고 있지 못하다 보니 11n까지만 확인되었다.
11ac USB dongle을 구매하였지만 linux에서 지원되지 않아 사용하지는 못하는 상황이다.
11ac Linux driver가 official하게 지원된다면 해당 sniffing 시 11ac frame들도 정상적으로 capture될 거라 생각된다.
'Network > Wi-Fi' 카테고리의 다른 글
Wi-Fi에게 AC OOOO 이란 무엇인가. (0) | 2016.06.05 |
---|---|
IPTIME A2004, 괜찮은 선택. (1) | 2016.04.09 |
Channel Bonding, 성능을 두배로 (0) | 2016.04.03 |
IPTIME A604, 이해할 수 없는 사양. (5) | 2016.04.03 |
Wi-Fi 채널, 더 나은 성능을 위한 이해 (0) | 2016.04.01 |
우리가 쓰는 Wi-Fi 성능 진짜 얼마일까? (2) | 2016.03.30 |
막강 가성비 IPTIME A1004 (2) | 2016.03.20 |
안정적이고, 속도 빠른 Wi-Fi 설정 및 사용하기 (5Ghz 사용) (0) | 2016.02.23 |