wpa_supplicant가 네트워크가 비활성화되었다고 말합니다.

wpa_supplicant가 네트워크가 비활성화되었다고 말합니다.

Gentoo Linux에서 네트워크(특히 대학의 WPA2 기업 네트워크)에 연결하려고 할 때 wpa_supplicant이 플래그가 설정되지 않으면 네트워크가 비활성화된 것으로 나타납니다.

내 거 wpa_supplicant.conf:

ctrl_interface=/var/run/wpa_supplicant

network={
    ssid="TheNetwork"
    eap=PEAP
    identity="redacted"
    password="redacted"
    ca_cert="/etc/ssl/certs/AddTrust_External_Root.pem"
    ca_path="/etc/ssl/certs/"
    phase1="peapver=0"
    phase2="auth=MSCHAPV2"
}

network={
    ssid="Another network that works"
    key_mgmt=NONE
    disabled=1 # This is obviously not normally disabled
}

network={
    ssid="Yet another working network"
    psk="redacted"
    disabled=1 # Likewise
}

중복된 줄이 제거된 출력 sudo wpa_supplicant -iwlp3s0 -c/etc/wpa_supplicant/wpa_supplicant.conf -d:

wpa_supplicant v2.6
random: Trying to read entropy from /dev/random
Successfully initialized wpa_supplicant
Initializing interface 'wlp3s0' conf '/etc/wpa_supplicant/wpa_supplicant.conf' driver 'default' ctrl_interface 'N/A' bridge 'N/A'
Configuration file '/etc/wpa_supplicant/wpa_supplicant.conf' -> '/etc/wpa_supplicant/wpa_supplicant.conf'
Reading configuration file '/etc/wpa_supplicant/wpa_supplicant.conf'
ctrl_interface='/var/run/wpa_supplicant'
    Priority group 0
   id=0 ssid='TheNetwork'
   id=1 ssid='Another network that works'
   id=2 ssid='Yet another working network'
nl80211: Supported cipher 00-0f-ac:1
...
nl80211: Supported cipher 00-0f-ac:9
nl80211: Using driver-based off-channel TX
nl80211: Driver-advertised extended capabilities (default) - hexdump(len=8): 00 00 00 00 00 00 00 40
nl80211: Driver-advertised extended capabilities mask (default) - hexdump(len=8): 00 00 00 00 00 00 00 40
nl80211: interface wlp3s0 in phy phy0
nl80211: Set mode ifindex 4 iftype 2 (STATION)
nl80211: Subscribe to mgmt frames with non-AP handle 0x55701974e5f0
nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x55701974e5f0 match=0104
nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x55701974e5f0 match=040a
nl80211: Register frame type=0xd0 (WLAN_FC_STYPE_ACTION) nl_handle=0x55701974e5f0 match=040b
...
rfkill: initial event: idx=1 type=1 op=0 soft=0 hard=0
netlink: Operstate: ifindex=4 linkmode=1 (userspace-control), operstate=5 (IF_OPER_DORMANT)
Add interface wlp3s0 to a new radio phy0
nl80211: Regulatory information - country=US (DFS-FCC)
nl80211: 2402-2472 @ 40 MHz 30 mBm
nl80211: 5170-5250 @ 80 MHz 23 mBm
nl80211: 5250-5330 @ 80 MHz 23 mBm (DFS)
nl80211: 5490-5730 @ 160 MHz 23 mBm (DFS)
nl80211: 5735-5835 @ 80 MHz 30 mBm
nl80211: 57240-63720 @ 2160 MHz 40 mBm
nl80211: Added 802.11b mode based on 802.11g information
wlp3s0: Own MAC address: [redacted]
wpa_driver_nl80211_set_key: ifindex=4 (wlp3s0) alg=0 addr=(nil) key_idx=0 set_tx=0 seq_len=0 key_len=0
...
wpa_driver_nl80211_set_key: ifindex=4 (wlp3s0) alg=0 addr=(nil) key_idx=5 set_tx=0 seq_len=0 key_len=0
wlp3s0: RSN: flushing PMKID list in the driver
nl80211: Flush PMKIDs
wlp3s0: No enabled networks (3 disabled networks)
wlp3s0: State: DISCONNECTED -> INACTIVE
ENGINE: Loading dynamic engine
ENGINE: Loading dynamic engine
EAPOL: SUPP_PAE entering state DISCONNECTED
EAPOL: Supplicant port status: Unauthorized
nl80211: Skip set_supp_port(unauthorized) while not associated
EAPOL: KEY_RX entering state NO_KEY_RECEIVE
EAPOL: SUPP_BE entering state INITIALIZE
EAP: EAP entering state DISABLED
Using existing control interface directory.
ctrl_iface bind(PF_UNIX) failed: Address already in use
ctrl_iface exists, but does not allow connections - assuming it was leftover from forced program termination
Successfully replaced leftover ctrl_iface socket '/var/run/wpa_supplicant/wlp3s0'
wlp3s0: Added interface wlp3s0
wlp3s0: State: INACTIVE -> DISCONNECTED
nl80211: Set wlp3s0 operstate 0->0 (DORMANT)
netlink: Operstate: ifindex=4 linkmode=-1 (no change), operstate=5 (IF_OPER_DORMANT)
random: Got 20/20 bytes from /dev/random
EAPOL: disable timer tick

나에게 충격을 준 것은 바로 그 라인이었다 wlp3s0: No enabled networks (3 disabled networks). 이 상황은 비활성화된 네트워크가 두 개뿐임에도 불구하고 발생합니다. 누락된 플래그에도 불구하고 첫 번째 네트워크가 비활성화되었다는 추가 증거는 disabled=1다른 두 네트워크와 함께 wpa_supplement 명령을 실행할 때입니다.활성화됨, 스캔을 수행하고 출력하지만 SSID가 명확하게 일치하더라도 "Disabled", "SSID Mismatch" 및 "SSID Mismatch"로 인해 관련된 모든 AP를 건너뜁니다. wlp3s0: No enabled networks (1 disabled networks)이 줄은 다른 두 네트워크가 제거된 상태에서 wpa_supplicant를 실행할 때 나타납니다.

구성에서 이 문제가 발생하는 이유는 무엇입니까?

답변1

network블록을 선언할 때 wpa_supplicant.conf기본값은 key_mgmt(WPA-PSK IEEE8021Xconfig.c로 설정DEFAULT_KEY_MGMT,정의DEFAULT_KEY_MGMT). 나중에 네트워크가 "비활성화"되었는지 확인할 때 확인하는 것 중 하나는 차단 여부입니다.key_mgmt=WPA-PSK, 하지만 그건 사실이야아니요이미 psk=설정됨.

따라서 네트워크 블록에는 두 가지 문제가 있습니다.

  1. wpa_supplicantPEAP 인증이 없기 때문에 시도조차 하지 않습니다 key_mgmt=WPA-EAP. 직접 테스트할 수는 없지만 댓글에서 이 설정이 도움이 된다고 언급하셨습니다.

  2. 기본값을 사용하고 있으므로 key_mgmt=WPA-PSK IEEE8021X아직 설정하지 않았기 때문에 차단이 비활성화된 것으로 간주됩니다 psk. 분명히 두 번째 질문은 PEAP를 사용하려고 하므로 실제로는 걱정할 것이 아닙니다 ;-).

을 기반으로 합니다 wpa_supplicant-2.6.

관련 정보