Gentoo에서 wifi 콘솔용 매니저 nmcli 사용해 보기

입질쾌감 물때표

nmcli 의미 : network manager command line interface

CLI : A command-line interface (CLI) is a text-based user interface (UI) used to run programs, manage computer files and interact with the computer. Command-line interfaces are also called command-line user interfaces, console user interfaces and character user interfaces. CLIs accept as input commands that are entered by keyboard; the commands invoked at the command prompt are then run by the computer.

명령줄 인터페이스(CLI)는 프로그램을 실행하고 컴퓨터 파일을 관리하며 컴퓨터와 상호 작용하는 데 사용되는 텍스트 기반 사용자 인터페이스(UI)입니다. 명령줄 인터페이스는 명령줄 사용자 인터페이스, 콘솔 사용자 인터페이스 및 문자 사용자 인터페이스라고도 합니다. CLI는 키보드로 입력되는 입력 명령을 받아들입니다. 명령 프롬프트에서 호출된 명령은 컴퓨터에서 실행됩니다.

리눅스에서 커맨드 라인으로 사용할수 있는 wifi 연결 커맨드 및 Daemon 등은 여러 종류가 있는데 이중에서 iwconfig, wpa_supplicant가 가장 대표적으로 사용되고 있다.

iwconfig는 사용법이 간단한데 비해 essid(와이파이 이름), 와이파이 Password를 입력할때 오류가 자주 발생되는 문제로 나도 자주 사용하지는 않고 다만 Wireless LAN 인터페이스가 현재 커널에서 인지를 하고 있는지, 또는 전원이 올라가있는지등을 확인 할때만 사용하고 있다.

# emerge networkmanager

nmcli를 사용하기 위해 네트워크매니저를 설치하자. 설치를 마무리 하면 NetworkManager 데몬을 실행시켜줘야 함.

# /etc/init.d/NetworkManager start

이렇게 되면 이전에 설정되어 있던 wpa_supplicant 등의 설정값들이 무시되고 기존에 dhcpd로 부여받았던 IP Address가 변경될수도 있다. 예를 들어 wireless로 Gentoo에 연결하고 있는중에 NetworkManager 데몬을 시작하게 되면 갑자기 연결이 끊길수도 있다는 이야기 임.

# rc-update del wpa_supplicant default
 * service wpa_supplicant removed from runlevel default
# /etc/init.d/wpa_supplicant stop # 서비스를 중지시켜야 한다.

wpa_supplicant Daemon이 동작하고 있는 상태이면 NetworkManager와 서로 충돌 상황이 생겨서 IP가 계속 바뀌거나 아래의 nmcli connect가 제대로 동작하지 않는 상황이 만들어질수도 있다.
이제 NetworkManager를 서비스로 등록하자

# rc-update add NetworkManager default
 * service NetworkManager added to runlevel default

nmcli 사용 방법

[WiFi 검색 목록 확인 방법]
# nmcli dev wifi
IN-USE  BSSID              SSID                          MODE   CHAN  RATE        SIGNAL  BARS  SECURITY  
        B4:A9:4F:AF:A5:FB  KT_GiGA_A5F7                  Infra  7     130 Mbit/s  52      ▂▄__  WPA1 WPA2 
        4E:BC:E9:E7:1E:0A  AT_501_R742PVNWW_1e0a         Infra  11    65 Mbit/s   50      ▂▄__  WPA2      
        50:46:AE:1E:7C:06  LGWiFi_7C07                   Infra  10    130 Mbit/s  44      ▂▄__  WPA2      
        56:46:AE:1E:7C:06  --                            Infra  10    0 Mbit/s    42      ▂▄__  WPA1      
        BA:A9:4F:2B:76:8D  --                            Infra  3     130 Mbit/s  34      ▂▄__  WPA2      
        C6:A9:4F:2B:76:8D  SK_WiFiGIGA768A_2.4G          Infra  3     130 Mbit/s  34      ▂▄__  WPA2      
        B4:A9:4F:2B:76:8D  SK_WiFiGIGA768A               Infra  3     130 Mbit/s  32      ▂▄__  WPA2      
        14:4D:67:91:13:E1  CJWiFi_13E2                   Infra  3     130 Mbit/s  20      ▂___  WPA1 WPA2 
        E4:75:DC:41:95:E2  AT_102_3REK1G03N8201R_2_95e3  Infra  11    65 Mbit/s   19      ▂___  WPA2      
        36:4D:67:91:13:E1  --                            Infra  3     130 Mbit/s  17      ▂___  WPA1      
        26:4D:67:91:13:E1  --                            Infra  3     130 Mbit/s  17      ▂___  WPA1 WPA2 
        04:09:A5:16:93:3F  SK_WiFiGIGA933C_2.4G          Infra  11    130 Mbit/s  14      ▂___  WPA2      

[접속방법]
# nmcli dev wifi connect WIFINAME password 1234567890 ifname wlp3s0n
Device 'wlp3s0n'successfully activated with 'XXXXXX (UUID)로 나옴'

ifname은 필수 파라미터는 아니다. 만약에 Wireless가 여러개를 가지고 있는 상황에서는 위와 같이 명시적으로 지정해줘야 하는 것뿐.

와이파이는 연결되면 DHCP 사용시에 IP를 자동으로 부여받고 기본적인 네트워크 설정까지 한번에 세팅해 준다. 서버용도가 아닌 휴대용으로 사용하는 기기라면 nmcli를 사용해서 WiFi 접속시에 불편함이 없도록 하는것도 좋은 선택이 될것이다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다