簡體   English   中英

檢測我連接到的VPN

[英]Detect what VPN I'm connected to

我目前正在使用桌面工具來自動化與客戶的VPN連接。 我想有一個很好的方法來確定我確實已連接到VPN。 我目前正在考慮使用netstat-rn中顯示的路由表,並將其與我應該連接的IP進行比較。

我的問題是,如何在我的C#應用​​程序中獲得這些IP,或者是否有更好的方法確定我是否已連接到VPN。

提前致謝!

這是如此經典,我花了幾個小時尋找解決方案,當我尋求幫助時,我自己找到了解決方案。 對於那些想知道的人, 是解決方案。

try
        {
            ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_IP4RouteTable");
            ListViewItem buf;

            foreach (ManagementObject queryObj in searcher.Get())
            {
                string destination = queryObj["Destination"].ToString();
                string mask = queryObj["Mask"].ToString();
                string metric = queryObj["Metric1"].ToString();
                string interfaceIndex = queryObj["InterfaceIndex"].ToString();
                string nexthop = queryObj["NextHop"].ToString();
                string protocol =queryObj["Protocol"].ToString();
                string type = queryObj["Type"].ToString();
                string status;
                if (queryObj["Status"]!=null)
                {
                  status = queryObj["Status"].ToString();
                }
                else
                {
                   status = string.Empty;
                }


                buf = new ListViewItem(new string[] {destination,mask,metric,interfaceIndex,nexthop,protocol,status,typ});
                list_route.Items.Add(buf);

            }
        }
        catch (ManagementException ex)
        {
            MessageBox.Show("An error occurred while querying for WMI data: " + ex.Message);
        }

無論如何,感謝所有花時間嘗試幫助我的人!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM