連接企業 WiFi 網路問題

連接企業 WiFi 網路問題

我在 Windows Server 2016 上設定了 Radius 伺服器,並且想使用我的應用程式連接到企業 WiFi 網路。我嘗試執行以下步驟:

使用以下命令設定沒有憑證的設定文件WLAN設定設定檔(我使用了從 netsh 導入的設定檔並進行了一些修改)

然後使用我的使用者名稱和密碼將下面的 xml 設定檔設定為WlanSetProfileEapXmlUserData:

<?xml version="1.0" ?> 
 <EapHostUserCredentials xmlns="http://www.microsoft.com/provisioning/EapHostUserCredentials" 
   xmlns:eapCommon="http://www.microsoft.com/provisioning/EapCommon" 
   xmlns:baseEap="http://www.microsoft.com/provisioning/BaseEapMethodUserCredentials">
   <EapMethod>
     <eapCommon:Type>26</eapCommon:Type> 
     <eapCommon:AuthorId>0</eapCommon:AuthorId> 
   </EapMethod>
   <Credentials xmlns:eapUser="http://www.microsoft.com/provisioning/EapUserPropertiesV1" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xmlns:baseEap="http://www.microsoft.com/provisioning/BaseEapUserPropertiesV1" 
     xmlns:MsPeap="http://www.microsoft.com/provisioning/MsPeapUserPropertiesV1" 
     xmlns:MsChapV2="http://www.microsoft.com/provisioning/MsChapV2UserPropertiesV1">
     <baseEap:Eap>
       <baseEap:Type>26</baseEap:Type> 
       <MsChapV2:EapType>
         <MsChapV2:Username>test</MsChapV2:Username> 
         <MsChapV2:Password>test</MsChapV2:Password> 
       </MsChapV2:EapType>
     </baseEap:Eap>
   </Credentials>
 </EapHostUserCredentials>

然後我用無線區域網路連接函數和回調函數來驗證連線。連接時我遇到以下問題:

NotificationCode 傳回代碼 8 (wlan_notification_acm_scan_fail),然後傳回代碼 11 (wlan_notification_acm_connection_attempt_fail)。

另外,來自 MS 文件:

wlan_notification_acm_scan_fail:

掃描可連接網路失敗。

WLAN_NOTIFICATION_DATA 結構的 pData 成員指向 WLAN_REASON_CODE 資料類型值,該值標識 WLAN 操作失敗的原因。

因此,我在發生此問題時檢查了 pData,它會傳回以下原因:

wlan_notification_acm_scan_fail "操作成功。"

但網路未連線。在此先感謝您的幫忙。

答案1

我已經解決了這個問題。問題是因為 PerformServerValidation 設定為 true 並且它顯示通知對話框來驗證 Windows 上的證書,這就是它返回的原因:

wlan_notification_acm_scan_fail "操作成功。"

將 PerformServerValidation 設為 false 修復了該問題(WlanSetProfile 函數)。

<PerformServerValidation xmlns=\"http://www.microsoft.com/provisioning/MsPeapConnectionPropertiesV2\">false</PerformServerValidation>

另外,對於 WlanSetProfileEapXmlUserData 函數,我提供了此設定檔:

<?xml version="1.0" ?>
<EapHostUserCredentials
xmlns="http://www.microsoft.com/provisioning/EapHostUserCredentials"
xmlns:eapCommon="http://www.microsoft.com/provisioning/EapCommon"
xmlns:baseEap="http://www.microsoft.com/provisioning/BaseEapMethodUserCredentials">
<EapMethod>
<eapCommon:Type>25</eapCommon:Type>
<eapCommon:AuthorId>0</eapCommon:AuthorId>
</EapMethod>
<Credentials
xmlns:eapUser="http://www.microsoft.com/provisioning/EapUserPropertiesV1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:baseEap="http://www.microsoft.com/provisioning/BaseEapUserPropertiesV1"
xmlns:MsPeap="http://www.microsoft.com/provisioning/MsPeapUserPropertiesV1"
xmlns:MsChapV2="http://www.microsoft.com/provisioning/MsChapV2UserPropertiesV1">
<baseEap:Eap>
<baseEap:Type>25</baseEap:Type>
<MsPeap:EapType>
<baseEap:Eap>
<baseEap:Type>26</baseEap:Type>
<MsChapV2:EapType>
<MsChapV2:Username>username</MsChapV2:Username>
<MsChapV2:Password>password</MsChapV2:Password>
</MsChapV2:EapType>
</baseEap:Eap>
</MsPeap:EapType>
</baseEap:Eap>
</Credentials>
</EapHostUserCredentials>

現在已成功連接到企業網路。問題已解決。謝謝。

相關內容