9615 wifi熱點調試記錄----熱點連接

上一篇文章提到能成功開啓熱點,接下來就是調試熱點連接了。熱點調試以加密方式:

wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP CCMP

 掃描到熱點後進行連接,客戶端連接不上,提示鑑權問題。打印出以下錯誤的log:

  Using interface eth0 with hwaddr 00:03:7f:06:61:37 and ssid "AR6K-RSN-WPA"
random: Cannot read from /dev/random: Resource temporarily unavailable
random: Only 0/20 bytes of strong random data available from /dev/random
random: Not enough entropy pool available for secure operations
WPA: Not enough entropy in random pool for secure operations - update keys later
 when the first station connects
eth0: STA 20:59:a0:90:bf:4a IEEE 802.11: disassociated
eth0: STA 20:59:a0:90:bf:4a IEEE 802.11: associated
random: Cannot read from /dev/random: Resource temporarily unavailable
random: Only 0/20 bytes of strong random data available from /dev/random
random: Not enough entropy pool available for secure operations
WPA: Not enough entropy in random pool to proceed - reject first 4-way handshake

eth0: STA 20:59:a0:90:bf:4a IEEE 802.11: disassociated
eth0: STA 20:59:a0:90:bf:4a IEEE 802.11: associated
random: Cannot read from /dev/random: Resource temporarily unavailable
random: Only 0/20 bytes of strong random data available from /dev/random
random: Not enough entropy pool available for secure operations
WPA: Not enough entropy in random pool to proceed - reject first 4-way handshake

eth0: STA 20:59:a0:90:bf:4a IEEE 802.11: disassociated

因爲隨機數的產生問題導致4此握手失敗,熱點也自然連接不上。網上有人遇到過隨機數產生問題,大概就是沒有中斷導致了隨機數生成失敗。把從/dev/random取隨機數,改成了從/dev/urandom取隨機數,鑑權問題得到了解決。但是依然是連接不上的,Log:

eth0: Event ASSOC (0) received
Add randomness: count=9 entropy=8
eth0: STA 20:59:a0:90:bf:4a IEEE 802.11: associated
STA included RSN IE in (Re)AssocReq  
New STA
ap_sta_add: register ap_handle_timertimeout for 20:59:a0:90:bf:4a (300 seconds - ap_max_inactivity)
ar6000_del_key:addr=20:59:a0:90:bf:4a key_idx=0
IEEE 802.1X: Ignore STA - 802.1X not enabled or forced for WPS
WPA: 20:59:a0:90:bf:4a WPA_PTK entering state INITIALIZE
ar6000_del_key: addr=20:59:a0:90:bf:4a key_idx=0
WPA: 20:59:a0:90:bf:4a WPA_PTK_GROUP entering state IDLE
WPA: 20:59:a0:90:bf:4a WPA_PTK entering state AUTHENTICATION
WPA: 20:59:a0:90:bf:4a WPA_PTK entering state AUTHENTICATION2
WPA: Re-initialize GMK/Counter on first stationGet randomness:len=32 entropy=9
Get randomness: len=32 entropy=0Get randomness: len=16 entropy=0
ar6000_set_key: alg=2 addr=ff:ff:ff:ff:ff:ff key_idx=1
Get randomness: len=32 entropy=0
WPA: 20:59:a0:90:bf:4a WPA_PTK entering state INITPSK
WPA: 20:59:a0:90:bf:4a WPA_PTK entering state PTKSTART
WPA: Send EAPOL(version=2 secure=0 mic=0 ack=1 install=0 pairwise=8 kde_len=0 keyidx=0 encr=0)
WPA: Use EAPOL-Key timeout of 1000 ms (retry counter 1)
hostapd_new_assoc_sta: reschedule ap_handle_timer timeout for 20:59:a0:90:bf:4a (300 seconds - ap_max_inactivity)
Wireless event: cmd=0x8c05 len=194
eth0: Event EAPOL_RX (27) received
IEEE 802.1X: 121 bytes from 20:59:a0:90:bf:4a
  IEEE 802.1X: version=1 type=3 length=117
WPA: Received EAPOL-Key from 20:59:a0:90:bf:4a key_info=0x10a type=2 key_data_length=22
Add randomness: count=10 entropy=0
WPA: 20:59:a0:90:bf:4a WPA_PTK entering state PTKCALCNEGOTIATING
WPA: PTK derivation - A1=00:03:7f:06:61:37 A2=20:59:a0:90:bf:4a
WPA: 20:59:a0:90:bf:4a WPA_PTKentering state PTKCALCNEGOTIATING2
WPA: 20:59:a0:90:bf:4a WPA_PTK entering statePTKINITNEGOTIATING
WPA: Send EAPOL(version=2 secure=1 mic=1 ack=1 install=1 pairwise=8 kde_len=94 keyidx=1 encr=1)
WPA: Use EAPOL-Key timeout of 1000 ms (retry counter 1)
eth0: Event EAPOL_RX (27) received
IEEE 802.1X: 99 bytes from 20:59:a0:90:bf:4a  
 IEEE 802.1X: version=1 type=3 length=95
WPA: Received EAPOL-Key from 20:59:a0:90:bf:4a key_info=0x30a type=2 key_data_length=0
WPA: 20:59:a0:90:bf:4a WPA_PTK entering state PTKINITDONE
ar6000_set_key: alg=3 addr=20:59:a0:90:bf:4a key_idx=0
eth0: AP-STA-CONNECTED 20:59:a0:90:bf:4a
eth0: STA 20:59:a0:90:bf:4a RADIUS: starting accounting session 53BCF6A8-00000000
eth0: STA 20:59:a0:90:bf:4a WPA: pairwise key handshake completed (RSN)

eth0: Event DISASSOC (1) received
eth0: STA 20:59:a0:90:bf:4a IEEE 802.11: disassociated
eth0: AP-STA-DISCONNECTED 20:59:a0:90:bf:4a
ar6000_del_key: addr=20:59:a0:90:bf:4a key_idx=0
WPA: 20:59:a0:90:bf:4a WPA_PTK entering state DISCONNECTED
WPA: 20:59:a0:90:bf:4aWPA_PTK entering state INITIALIZE
ar6000_del_key: addr=20:59:a0:90:bf:4a key_idx=0
ap_free_sta: cancel ap_handle_timer for 20:59:a0:90:bf:4a
Wireless event: cmd=0x8c02 len=21

收到了AP-STA-CONNECTED的消息以後,一下子又收到了DISASSOC請求,最終熱點連接還是連接不成功。
我懷疑是沒有分配IP地址導致了此問題,所有使用命令來配置動態IP。
/ # ifconfig eth0 192.168.43.1 netmask 255.255.255.0
ifconfig eth0 192.168.43.1 netmask 255.255.255.0
/ # echo 1 > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/ip_forward
/ # dnsmasq --no-daemon --no-resolv --no-poll --dhcp-range=192.168.43.2,192.168.43.100
dnsmasq --no-daemon --no-resolv --no-poll --dhcp-range=192.168.43.2,192.168.43.100
dnsmasq: failed to bind DHCP server socket: Address already in use


提示地址已經被佔用。這個問題查了很久,網上查找的資料說用地址複用,修改代碼:
    if((setsockopt(srv->fd,SOL_SOCKET,SO_REUSEADDR,&on,sizeof(on)))<0)  
    {  
    wpa_printf(MSG_DEBUG, "HTTP: setsockopt fail!");
      goto fail;  
    }  
問題依舊存在,依然提示地址被佔用了。一直糾結在socket被佔用,用ps查看進程,確實啓動了一個dnsmasq進程:
 217 nobody     0:00 /usr/bin/dnsmasq -7 /etc/dnsmasq.d
 有人遇到過啓動熱點後,客戶端連接過來,分配不到IP的情況,重啓了hostapd就可以了。我試着重啓了下,不行。突然想到重啓下dnsmasq,
  就想kill了 dnsmasq進程,在用dnsmasq命令去配置了ip:
   # ifconfig eth0 192.168.43.1 netmask 255.255.255.0
ifconfig eth0 192.168.43.1 netmask 255.255.255.0
# echo 1 > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/ip_forward
 # dnsmasq --no-daemon --no-resolv --no-poll --dhcp-range=192.168.43.2,192.168.43.100
dnsmasq --no-daemon --no-resolv --no-poll --dhcp-range=192.168.43.2,192.168.43.100 
   地址被佔用的命令竟然沒有了。嘗試着用其他設備連接了一下這個熱點,連接成功。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章