RadarURL

유닉스/리눅스
2014.08.22 09:58

Linux 무선랜 포팅 방법

조회 수 1510 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

며칠동안 무선랜과 씨름하다 겨우 포팅에 성공하였습니다.

인터넷에서 자료를 찾아서 해보았는데 잘안되더라구요.

그래서 혹시 무선랜 때문에 고생하시는분이 계시면 도움될까 해서 올립니다.

제가 사용하는 CPU는 S5PV210 이구요 무선랜은 USB 타입 ipTime N500U 입니다.


1.먼저 제조사 홈페이지에서 최신 리눅스 드라이버를 다운로드 받습니다.


2.컴파일 메뉴얼을 참조하여 ARM 용으로 컴파일을 합니다.

  .CPU 종류

  .컴파일러

  .커널 경로명

  .인스톨 경로명

   위와 같은 내용등을 내 개발환경에 맞도록 Makefile을 수정하면 됩니다.

   참고로 저는 아래와 같이 하였습니다. 

   EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
   ARCH := arm
   CROSS_COMPILE := arm-generic-linux-gnueabi-
   KVER  := 2.6.35.1
   KSRC ?= /home/ksw/project/kernel_s5pv210/build_s5pv210
   INSTALL_PREFIX := $TopDIR/install

   make & make install 하면 됩니다.

   warning은 무시해도 괜찮지만 error는 내용을 확인하고 해결하여야 합니다.


3.드라이버를 타켓보드에 복사 합니다.


4.이제 드라이버를 올려야 겠지요

   insmod 드라이브명.ko 와 같은 형식으로 하면 됩니다.

   저는 다음과 같이 올렸습니다.

    insmod 8192du.ko 


5.드라이버가 제대로 오라갔는지 확인 합니다.

    lsmod 하면 아래와 같은 내용이 터미널로 출력 되면 됩니다.

    Module                  Size  Used by    Not tainted
    8192du                496436  0


6.USB 포트에 무선랜을 연결합니다.

    USB가 인식하면 /proc/bus/usb/devices 의 내용으로 확인 할 수 있습니다.

    T:  Bus=01 Lev=02 Prnt=02 Port=02 Cnt=03 Dev#=  5 Spd=480 MxCh= 0              
    D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1                   
    P:  Vendor=0bda ProdID=8194 Rev= 0.00                                          
    S:  Manufacturer=Realtek                                                       
    S:  Product=802.11n NIC                                                        
    S:  SerialNumber=00Ps= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=rtl8192du         
    E:  Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms                                    
    E:  Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms     


    다소 내용이 길지만 다음 내용만 확인하면 됩니다.

    P:  Vendor=0bda ProdID=8194 Rev= 0.00         

    S:  Manufacturer=Realtek        

    S:  SerialNumber=00Ps= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=rtl8192du                                                                                           


    제일중요한 부분이  Driver=rtl8192du  입니다.

    드라이버가 올라가서 무선랜 아답터를 인식했다는 내용이기 때문입니다.

                                      

7.다음으로 무선랜 툴을 컴파일 하여야 합니다.

    보통은 키트를 구입하면은 기본으로 설치해서 주기도 합니다.

    컴파일러를 개발 환경에 맞도록 Makefile을 수정하면 됩니다.

    PREFIX = ./install

    CC = arm-generic-linux-gnueabi-gcc
    AR = arm-generic-linux-gnueabi-ar
    RANLIB = arm-generic-linux-gnueabi-ranlib
    make 하면 됩니다.

    실행 파일과 라이브러리가 몇개 생깁니다.

     모두 타겟보드로 복사 하시면 됩니다.


8.다음으로 보안키를 사용하기 위한 프로그램을 컴파일 하여야 합니다.

   타겟보드에 설치되어 있을수도 있으나 최신버젼을 사용하기 위해서는 컴파일해서 사용하는것도

   좋은 방법입니다.                

   Makefile 내용을 아래와 같이 수정합니다.

   CC = arm-generic-linux-gnueabi-gcc
   AR = arm-generic-linux-gnueabi-ar
   RANLIB = arm-generic-linux-gnueabi-ranlib

   make 하면 됩니다.

   실행 파일이 여러개 생기면 모두 타겟보드에 복사합니다.


9.이제야 무선랜을 사용할 준비가 끝났습니다. 


10.무선랜이 어떤게 잡히는지 확인 하여야 합니다.

   iwlist wlan0 scan 하면은 엄청나게 많은 메시지가 출력 됩니다.

wlan0     Scan completed :
          Cell 01 - Address: 00:08:9F:A5:93:AC
                    ESSID:"dp1"
                    Protocol:IEEE 802.11bgn
                    Mode:Master
                    Frequency:2.432 GHz (Channel 5)
                    Encryption key:on
                    Bit Rates:300 Mb/s
                    Extra:wpa_ie=dd160050f20101000050f20401000050f20401000050f202
                    IE: WPA Version 1
                        Group Cipher : CCMP
                        Pairwise Ciphers (1) : CCMP
                        Authentication Suites (1) : PSK
                    Extra:rsn_ie=30140100000fac040100000fac040100000fac020000
                    IE: IEEE 802.11i/WPA2 Version 1
                        Group Cipher : CCMP
                        Pairwise Ciphers (1) : CCMP
                        Authentication Suites (1) : PSK
                    IE: Unknown: DD9E0050F204104A0001101044000102103B0001031047001063041253101920061228AABBCCDDEEFF1021001B5265616C74656B2053656D69636F6E647563746F7220436F72702E1023000752544C387878781024000D455626
                    Quality=98/100  Signal level=100/100 
          Cell 02 - Address: 00:08:9F:DB:7A:F4
                    ESSID:"iptime"
                    Protocol:IEEE 802.11bgn
                    Mode:Master
                    Frequency:2.412 GHz (Channel 1)
                    Encryption key:on
                    Bit Rates:300 Mb/s
                    Extra:wpa_ie=dd160050f20101000050f20401000050f20401000050f202
                    IE: WPA Version 1
                        Group Cipher : CCMP
                        Pairwise Ciphers (1) : CCMP
                        Authentication Suites (1) : PSK
                    Extra:rsn_ie=30140100000fac040100000fac040100000fac020000
                    IE: IEEE 802.11i/WPA2 Version 1
                        Group Cipher : CCMP
                        Pairwise Ciphers (1) : CCMP
                        Authentication Suites (1) : PSK
                    IE: Unknown: DD0E0050F204104A0001101044000102
                    Quality=100/100  Signal level=58/100 

                     ---------------------- 나머지 생략 -------------------------------------


11.많은 내용 중에서 ESSID를 보면 접속하고자하는 무선랜을 찾을 수 있습니다.


12.보안키 설정 파일을 다음과 같은 방법으로 만들어야 합니다.

  ./wpa_passphrase essid password >> 파일명.conf

    - essid 는 위에서 확인한 ESSID(iptime) 입니다.

    - password 는 보안키값 입니다.

    - ./wpa_passphrase iptime 1234567890 >> iptime.conf 과 같은 형식 입니다.

  - iptime.conf 의 내용은 다음과 같습니다. 

    network={
           ssid="iptime"
           #psk="1234567890"
           psk=4a701ef142444b24c4cb4c1be394432d97cdb195c90c0e9f47e1eb495be02a39
   }


13. iptime.conf 내용을 수정하여 줍니다.

   network={

        ssid="iptime"

        proto=WPA2

        key_mgmt=WPA-PSK

       #psk="1234554321"

        psk=302577bbc24906205b825948ea7026e816e67b60cd2a972d2f1d811a98ddcb9e

    }

     proto 와  key_mgmt는 무선랜 환경에 맞추어 수정하면 됩니다.

     노트북 무선랜 속성을 확인하면 알 수 있습니다.


14.무선랜에 연결합니다.

  - 먼저 유선랜을 내립니다.

   ifconfig eth0 down 

 - 무선랜을 올리고

   fconfig wlan0 up

 - 무선랜에 접속을 합니다.

   iwconfig wlan0 essid "iptime"

 - 보안키를 살리고

   ./wpa_supplicant -iwlan0 -c./iptime.conf &

 - 아이피를 지정하는데

   자동(DHCP)은

   dhcpcd wlan0

   수동은

   ifconfig wlan0 192.168.0.27 netmask 255.255.255.0

   route add default gw 192.168.0.1 dev wlan0

   게 설정하면 됩니다.


15.무선랜 환경을 확인 하려면

   ifconfig

      iwconfig

 

16.이제 무선랜 사용하시면 됩니다.

     핑테스트가 제일 먼저겠지요.

     ping 192.168.0.1

     64 bytes from 192.168.0.1: seq=0 ttl=255 time=8.532 ms
     64 bytes from 192.168.0.1: seq=1 ttl=255 time=2.739 ms
     64 bytes from 192.168.0.1: seq=2 ttl=255 time=2.979 ms
     64 bytes from 192.168.0.1: seq=3 ttl=255 time=4.309 ms
     64 bytes from 192.168.0.1: seq=4 ttl=255 time=8.557 ms


17.핑테스트 안되면 에러메시지 확인하면서 처음부터 다시  작업하여야 합니다.


18.오타,틀린내용은 귀엽게 봐주시길.................................    


출처 : http://forum.falinux.com/zbxe/index.php?document_srl=785255&mid=network_programming

?

공부 게시판

공부에 도움되는 글을 올려주세요.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 [공지] 공부 게시판 입니다. 처누 2003.08.18 928141
37 웹 프로그래밍 PHP 파서 이해하기 (<?php의 php를 생략하고 간단히 <? 태그 와 ?> 태그를 사용하는 방법) JaeSoo 2016.08.10 322
36 유닉스/리눅스 성능 엔지니어링 대한 접근 방법 (Performance tuning) file JaeSoo 2016.05.05 874
35 모바일 블루스택 GPU 사용으로 CPU 부하를 줄이는 방법 file JaeSoo 2016.03.07 802
34 모바일 안드로이드 개발자 옵션(developer options)을 액세스하는 방법 file JaeSoo 2016.03.07 965
33 모바일 블루스택 설치 및 설정, 레이븐, 히트, 성순매크로 설치 방법 JaeSoo 2016.03.07 1484
32 윈도우즈 윈도우에서 특정 프로세스 강제 종료하는 방법 (taskkill) file JaeSoo 2016.02.19 872
31 하드웨어 잡설로 써보는 키보드 선택하는 방법 JaeSoo 2015.12.13 630
30 하드웨어 성능 엔지니어링 대한 접근 방법 (Performance tuning) file JaeSoo 2015.08.24 645
29 윈도우즈 특수문자표 입력 방법 JaeSoo 2015.08.04 460
28 자동차 당신의 생명을 지키는 50가지 방법 (Motorcycle Cruiser Magazine, 2007년 2월호 게재) JaeSoo 2015.05.01 723
27 인터넷 Omega plus 같은 애드웨어 삭제하는 방법 (AdwCleaner) file JaeSoo 2014.12.16 1299
26 취미 Subsonic(서브소닉) 사용 방법 file JaeSoo 2014.11.22 951
25 데이터베이스 MySQL Binary Log 지우는 방법 JaeSoo 2014.11.17 1222
24 윈도우즈 Windows에서 볼륨 정품 인증 오류 코드 문제를 해결하는 방법 JaeSoo 2014.11.17 1581
23 데이터베이스 Mysql 데이터 폴더의 mysql-bin.xxx 파일들 관련 삭제 및 초기화 방법 JaeSoo 2014.11.17 1116
22 하드웨어 하드디스크 용량 계산하는 방법 및 하드용량별 실제 표기용량 file JaeSoo 2014.10.20 1566
21 윈도우즈 윈도우7 업데이트 오류 해결 방법 file JaeSoo 2014.09.15 1484
20 건강 크라운 치료 방법들 (PFM, 지르코니아, PIN, 올세라믹) file JaeSoo 2014.09.12 1650
» 유닉스/리눅스 Linux 무선랜 포팅 방법 JaeSoo 2014.08.22 1510
18 유닉스/리눅스 Linux 강제 umount 방법 (umount : device is busy 발생시) JaeSoo 2014.08.19 1475
Board Pagination Prev 1 2 Next
/ 2


즐겨찾기 (가족)

JAESOO's HOMEPAGE


YOUNGAE's HOMEPAGE


장여은 홈페이지


장여희 홈페이지


장여원 홈페이지


즐겨찾기 (업무)

알리카페 홀릭

숭실대 컴퓨터 통신연구실 (서창진)

말레이시아 KL Sentral 한국인 GuestHouse


즐겨찾기 (취미)

어드민아이디

유에코 사랑회

아스가르드 좋은사람/나쁜사람

JServer.kr

제이서버 메타블로그

재수 티스토리


즐겨찾기 (강의, 커뮤니티)

재수 강의 홈페이지


한소리


VTMODE.COM


숭실대 인공지능학과


숭실대 통신연구실


베너