USB Wi-Fi 어댑터가 AP(CLI)에 연결되지 않음

USB Wi-Fi 어댑터가 AP(CLI)에 연결되지 않음

최근에 armhf 기반 보드를 설정했는데 네트워크 구성에서 이 문제가 발생했습니다. 이제 TP-Link USB WiFi 어댑터가 연결되었으니 WiFi에 연결할 수 있는 것 같은데, 이더넷 케이블을 뽑으면 에서 구성한 IP 주소를 사용하여 보드에 연결할 수 없습니다 /etc/network/interfaces. 액세스 포인트도 확인했지만 그에 따르면 내 장치는 Wi-Fi를 통해 연결되지 않았습니다.

통계에 따르면 꽤 잘 작동하는 것 같아서 조금 당황스럽습니다. 이것이 내가 지금까지 가지고 있는 것입니다:

$ tail -n [changes] /var/log/syslog

Mar 30 23:09:24 localhost kernel: [  830.968410] sun7i-dwmac 1c50000.ethernet eth0: Link is Down
Mar 30 23:09:50 localhost kernel: [  856.968094] sun7i-dwmac 1c50000.ethernet eth0: Link is Up - 100Mbps/Full - flow control rx/tx

연결이 실행되고 있는 것 같습니다.

$ iw wlan0 link
      Connected to xx:67:5x:e1:9f:af (on wlan0)
      SSID: UPCA887FD1
      freq: 2452
      RX: 187653 bytes (1131 packets)
      TX: 500 bytes (6 packets)
      signal: -48 dBm
      tx bitrate: 57.8 MBit/s MCS 5 short GI

      bss flags:    short-slot-time
      dtim period:  1
      beacon int:   100


$ iwconfig
      eth0      no wireless extensions.



      wlan0     IEEE 802.11  ESSID:"nietwurk"
      Mode:Managed  Frequency:2.452 GHz  Access Point: xx:67:5x:e1:9f:af
      Bit Rate=72.2 Mb/s   Tx-Power=20 dBm
      Retry short limit:7   RTS thr:off   Fragment thr:off
      Encryption key:off
      Power Management:off
      Link Quality=66/70  Signal level=-44 dBm
      Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
      Tx excessive retries:0  Invalid misc:0   Missed beacon:0

      lo        no wireless extensions.


$ ifconfig 

      ...
      wlan0   Link encap:Ethernet  HWaddr 64:70:02:0e:10:99
              inet addr:192.168.0.35  Bcast:192.168.0.255  Mask:255.255.255.0
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:4494 errors:0 dropped:2 overruns:0 frame:0
              TX packets:11 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:498743 (487.0 KiB)  TX bytes:1338 (1.3 KiB)



$ ifup -vvv wlan0
    Configuring interface wlan0=wlan0 (inet)
    run-parts --exit-on-error --verbose /etc/network/if-pre-up.d
    run-parts: executing /etc/network/if-pre-up.d/bridge
    run-parts: executing /etc/network/if-pre-up.d/ethtool
    run-parts: executing /etc/network/if-pre-up.d/hostapd
    run-parts: executing /etc/network/if-pre-up.d/ifenslave
    + [ inet = meta ]
    + IF_BOND_SLAVES=
    + [  ]
    + [  ]
    + [ -z  ]
    + exit
    run-parts: executing /etc/network/if-pre-up.d/vlan
    run-parts: executing /etc/network/if-pre-up.d/wireless-tools
    run-parts: executing /etc/network/if-pre-up.d/wpasupplicant
    wpa_supplicant: wpa-driver nl80211,wext (default)
    wpa_supplicant: /sbin/wpa_supplicant -s -B -P /run/wpa_supplicant.wlan0.pid -i wlan0 -D nl80211,wext -C /run/wpa_supplicant
    Starting /sbin/wpa_supplicant...
    wpa_supplicant: creating sendsigs omission pidfile: /run/sendsigs.omit.d/wpasupplicant.wpa_supplicant.wlan0.pid
    wpa_supplicant: ctrl_interface socket located at /run/wpa_supplicant/wlan0
    wpa_supplicant: configuring network block -- 0
    wpa_supplicant: wpa-ssid "nietwurk" -- OK
    wpa_supplicant: wpa-psk ***** -- OK
    wpa_supplicant: enabling network block 0 -- OK
    ip addr add 192.168.0.35/255.255.255.0 broadcast 192.168.0.255    dev wlan0 label wlan0
    ip link set dev wlan0   up

    run-parts --exit-on-error --verbose /etc/network/if-up.d
    run-parts: executing /etc/network/if-up.d/ethtool
    run-parts: executing /etc/network/if-up.d/ifenslave
    + [ inet = meta ]
    + [  ]
    run-parts: executing /etc/network/if-up.d/ip
    run-parts: executing /etc/network/if-up.d/mountnfs
    run-parts: executing /etc/network/if-up.d/openssh-server
    run-parts: executing /etc/network/if-up.d/upstart
    run-parts: executing /etc/network/if-up.d/wpasupplicant

/etc/network/interfaces

allow-hotplug wlan0
iface wlan0 inet static
        address 192.168.0.35
        netmask 255.255.255.0
        wpa-ssid nietwurk
        wpa-psk <the psk, not in quotes>
        wireless-mode Managed

어떤 아이디어가 있나요?

답변1

  1. 사전 공유 키(PSK) 유출을 방지하기 위해 /etc/network/interfaces에 대한 권한을 제한합니다(또는 /etc/network/interfaces.d/wlan0과 같은 최신 Debian 버전에서는 별도의 구성 파일을 사용합니다):

    chmod 0600 /etc/network/interfaces

  2. 다음 예를 변경하여 WPA 비밀번호를 사용하여 SSID의 올바른 WPA PSK 해시를 계산하십시오.

    wpa_passphrase myssid my_very_secret_passphrase

명령줄에 비밀번호를 입력하지 않으면 비밀번호를 묻는 메시지가 표시됩니다. 위 명령은 다음과 같은 출력을 제공합니다.

network={
    ssid="myssid"
    #psk="my_very_secret_passphrase"
    psk=ccb290fd4fe6b22935cbae31449e050edd02ad44627b16ce0151668f5f53c01b
}

/etc/network/interfaces 파일에 넣으려면 "psk="에서 줄 끝까지 복사해야 합니다.

  1. 텍스트 편집기에서 /etc/network/interfaces를 엽니다.

    nano /etc/network/interfaces

  2. 무선 인터페이스와 SSID 및 PSK HASH에 적합한 스탠자를 정의합니다. 예를 들어:

auto wlan0 iface wlan0 inet dhcp wpa-ssid myssid wpa-psk ccb290fd4fe6b22935cbae31449e050edd02ad44627b16ce0151668f5f53c01b

"auto" 섹션은 시스템 시작 시 인터페이스를 엽니다. 필요하지 않은 경우 이 줄을 제거하거나 주석 처리하세요.

  1. 파일을 저장하고 편집기를 종료합니다.
  2. 인터페이스를 엽니다. 그러면 wpa_supplicant가 백그라운드 프로세스로 시작됩니다.

    # ifup wlan0

관련 정보