라즈베리파이 무선랜 설정하기
집에 ipTIME N500U 무선랜이 있어서 라즈베리파이에 써볼려고 별짓 다했는데 결국 실패했네요. 그냥 남들 다 쓰는 무선랜 쓰는게 장땡인것 같습니다.
그래서 구매한 것이 ipTIME N100mini. 이놈은 별도의 드라이버 설치가 필요없이 자동으로 인식됩니다.
USB 포트에 무선랜을 끼우고…
1. USB 장치 목록 확인
- $ lsusb
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. Bus 001 Device 004: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter Bus 001 Device 005: ID 04f3:0103 Elan Microelectronics Corp.
USB 장치 목록에서 확인 되면 적어도 USB 연결상태는 좋은 것
2. 무선랜 설정 확인
아래 명령으로 WiFi 동글이 제대로 인식이 되는지 확인합니다.
- $ iwconfig
wlan0 IEEE 802.11bgn xxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx ... lo no wireless extensions. eth0 no wireless extensions.
여기서 wlan0 가 안보이면 무선랜이 인식이 안된것. 드라이버가 맞지 않거나 등등… 해당 리눅스 드라이버를 설치하거나 다시 끼워보거나 리붓 등등의 조치를 취해야함 ==> 링크 참고
이제 주변의 공유기(AP)를 검색해 봅니다.
- iwlist wlan0 scan
이때 결과가 아래처럼 나와야 합니다.
Cell 01 - Address: 06:30:0D:4E:75:46 ESSID:"KT_WLAN" Protocol:IEEE 802.11bg Mode:Master Frequency:2.437 GHz (Channel 6) Encryption key:on Bit Rates:54 Mb/s Quality=64/100 Signal level=7/100 Cell 02 - Address: 00:30:0D:4E:75:46 ESSID:"" Protocol:IEEE 802.11bg Mode:Master Frequency:2.437 GHz (Channel 6) ......
여기서 자신이 원하는 공유기가 보여야 합니다. ESSID(공유기 이름), 암호화 방식(WPA1/WPA2 등등) 을 메모해 둡니다.
3. 인증 설정
- $ su –
- : 루트 유저 비번 입력
- # wpa_passphrase “SSID_NAME” SSID_PASSWORD >> /etc/wpa_supplicant/wpa_supplicant.conf
SSID_NAME는 공유기(AP) 이름에 해당합니다. 이름에 공백이 있는 경우 따옴표로 감싸줘야 함. 루트 로그인 상태에서 위 명령을 실행하면 공유기 설정이 /etc/wpa_supplicant/wpa_supplicant.conf 파일에 입력됨. 이제 입력된 내용을 확인.
- # nano /etc/wpa_supplicant/wpa_supplicant.conf
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="SSID_NAME" psk="SSID_PASSWORD" key_mgmt=WPA-PSK }
위와 같은 형태로 내용을 맞춰줍니다. 원래 내용은 아래처럼 되어 있을텐데 여기서 psk=”xxx” 부분을 삭제하고(비번이 노출되므로) 사용해도 됩니다.
network={ ssid="SSID_NAME" #psk="SSID_PASSWORD" psk=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx }
이제 무선랜을 재시작하고…
- $ sudo ifdown wlan0
- $ sudo ifup wlan0
4. 네트워크 설정
아래 명령은 root 상태가 아니라면 sudo 로 실행
- # nano /etc/network/interfaces
/etc/network/interfaces 파일 내용을 아래와 같이 맞춰줍니다.
auto lo iface lo inet loopback iface eth0 inet dhcp allow-hotplug wlan0 auto wlan0 iface wlan0 inet manual wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf iface default inet dhcp
주의!!! 위 설정으로 무선랜이 인식되지 않는 경우가 왕왕 발생하네요. 그럴 경우 아래 설정을 사용해보세요.
auto lo iface lo inet loopback allow-hotplug wlan0 iface wlan0 inet dhcp wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf auto eth0 iface eth0 inet dhcp
네트웍 서비스 재시작.
- sudo service networking restart
이제 ifconfig 명령으로 IP를 제대로 받아오는지 확인하세요.
- ifconfig
안되면 sudo shutdown -r now 로 재부팅 후 확인해보세요…
5. 절전 설정 해제
무선랜 설정 후 ssh 접속을 해보면 잠시만 자리를 비워도 연결이 끊어지는 경우가 생기는데 이 경우는 절전 설정이 되어 있어서 그런듯 합니다. 아래 방식대로 패치를 함 해주는 것이 좋을 것 같습니다.
제가 사용하는 ipTIME N100mini 모델은 8188cu 모델인데 설정은 8192cu 모델과 공유하는 것 같습니다. 아래 명령으로 설정 확인.
- cat /sys/module/8192cu/parameters/rtw_power_mgnt
결과값이 1 또는 2가 나오면 절전 설정 상태이므로 수정
- sudo vi /etc/modprobe.d/8192cu.conf
파일에 아래 내용을 입력하고 저장
options 8192cu rtw_power_mgnt=0 rtw_enusbss=0
설정이 끝나면 리붓~
(그래도 여전히 같은 문제가 발생하곤 하는데… putty 같은 터미널 설정에서 null 패킷을 30초 단위로 보내도록 설정해 두면 끊김 방지에 도움이 될겁니다.)