꿈꾸는 시스템 디자이너

리눅스(우분투)에서 Wi-Fi AP 접속방법(wpa_cli 사용법) 본문

Development/Linux & Ununtu

리눅스(우분투)에서 Wi-Fi AP 접속방법(wpa_cli 사용법)

독행소년 2014. 8. 18. 11:38

우분투(리눅스) 머신에서의 Wi-Fi 기반의 무선통신은 wpa_supplicant라는 프로그램이 담당한다. 일반적으로 우분투의 네트워크 매니저를 통해 AP를 검색하거나 접속을 시도할 수 있는데, 실제 네트워크 매니저의 하부에서 wpa_supplicant 가 동작한다. 이 wpa_supplicant를 터미널 상에서 제어하기 위해서는 wpa_cli(command line interface)를 이용한다.



wpa_cli를 실행하면 위의 그림과 같이 표시되며 사용하는 무선랜 인터페이스가 wlan7임을 확인할 수 있다.


status 명령어를 이용하면 현재 우분투 머신의 통신 상태값을 확인할 수 있다.

현재 "H4U"라는 이름의 AP에 접속중이고, 이 AP의 MAC주소를 확인할 수 있다. 또한 본 AP와의 네트워크 연결 id값이 0임을 확인할 수 있다.

또한 우분투 머신의 ip주소와 MAC주소도 확인할 수 있다.



scan 명령어는 주변의 AP들의 검색을 시도하는 명령어로, AP검색이 완료되면 <3>CTRL-EVENT-SCAN-RESULTS 이벤트를 반환한다.


scan_result 명령어는 검색된 AP의 정보를 출력한다. 현재 접속중인 "H4U" AP를 포함한 주변 AP들의 정보를 확인할 수 있다.


list_networks 명령어는 현재 이용 가능한 네트워크의 리스트를 나타낸다. 현재 1개의 AP와 연결이 가능함을 의미한다.


이제 수동으로 새로운 AP를 설정하고 접속을 시도한다.

$> add_network

새로운 네트워크 연결을 만들기 위한 명령어로, 새로운 네트워크의 id값을 반환한다.

본 예제에서는 1이 반환되었고, 이제 이 id값을 이용해서 네트워크를 설정한다.


$> set_network 1 ssid "iptime-jagugi"

새 네트워크 연결에서 사용할 AP의 이름(ssid)를 설정한다. 여기서 1은 네트워크 id이다.


$> set_network 1 psk "12345678"

새 네트워크 연결에서 사용할 AP의 패스워크(psk)를 설정한다. 여기서도 1은 네트워크 id이다.


$> select_network 1

새로 설정한 네트워크 연결을 선택하는 명령어로, 선택시도와 함께 실제 연결이 시도된다.


$> status

현재 네트워크 상태를 확인하면, iptime-jagugi에 접속되었으며, 이 네트워크의 id값으로 1이 설정되어 있는 것을 확인할 수 있다.


list_networks 명령어는 현재 사용가능한 네트워크 연결의 리스트를 반환한다. 기존에 사용하던 H4U는 0의 id값을 가지고 있으며, 현재 사용하는 iptime-jagugi는 id값으로 1을 가지는 것을 확인할 수 있다.


이제 두 연결을 번갈아 가면서 접속 시도해 본다.

$> select_network 0

0번 네트워크로 접속을 시도한다.

$> status

0번 네트워크인 "H4U" AP에 접속된 것을 확인할 수 있다.


list_networks 명령어로 현재 접속중인 네트워크가 0번임을 확인할 수 있다.


select_network 1 명령어로 다시 iptime-jagugi AP로 접속되는 것을 확인할 수 있다.


disconnect 명령어로 현재 AP와의 접속을 종료할 수 있으며, reconnect 명령어로 다시 AP와의 접속을 시도할 수 있다.



Comments