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)
。この状況は、無効なネットワークが2つしかないにもかかわらず発生します。不足しているフラグにもかかわらず、最初のネットワークが無効になったという追加の証拠は、他の2つのネットワークでdisabled=1
wpa_supplementコマンドを実行したときです。有効、スキャンを実行して出力しますが、SSIDが明確に一致していても、「Disabled」、「SSID Mismatch」、および「SSID Mismatch」のために関連するすべてのAPをスキップします。wlp3s0: No enabled networks (1 disabled networks)
この行は、他の2つのネットワークが削除された状態でwpa_supplicantを実行したときに表示されます。
構成でこの問題が発生するのはなぜですか?
答え1
network
ブロックを宣言するときのwpa_supplicant.conf
デフォルト値はkey_mgmt
(WPA-PSK IEEE8021X
config.c
に設定DEFAULT_KEY_MGMT
、定義DEFAULT_KEY_MGMT
)。後でネットワークが「無効」になっていることを確認するときに確認することの1つはブロックするかどうかです。うんkey_mgmt=WPA-PSK
、でもそれは本当です。いいえ既にpsk=
設定済み。
したがって、ネットワークブロックには2つの問題があります。
wpa_supplicant
PEAP認証がないため、試しても失敗しますkey_mgmt=WPA-EAP
。自分でテストすることはできませんが、コメントでこの設定が役に立つと述べました。デフォルトを使用しているため、
key_mgmt=WPA-PSK IEEE8021X
まだ設定していないため、ブロックは無効になっていると見なされますpsk
。明らかに2番目の質問はPEAPを使用しようとしているので、実際には心配しません;-)。
に基づいていますwpa_supplicant-2.6
。