Перечисление доступных беспроводных сетей.

Тема в разделе "WASM.NETWORKS", создана пользователем _Juicy, 16 авг 2011.

  1. _Juicy

    _Juicy Active Member

    Публикаций:
    0
    Регистрация:
    12 авг 2003
    Сообщения:
    1.159
    Адрес:
    SPb
    Как измерить высоту здания с помощью барометра узнать список беспроводных сетей, доступных в данной точке?
    Интересуют любые (кроме вымышленных) методы, ОС и ПО.
     
  2. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    netsh имеет соответствующие аргументы, когда-то я так делал. почитай хелп к нему (windows)
    под линукс, соответственно, iw* команды.
     
  3. _sheva740

    _sheva740 New Member

    Публикаций:
    0
    Регистрация:
    31 авг 2005
    Сообщения:
    1.539
    Адрес:
    Poland
    Squash
    Вот кусок из чьего-то исходника
    Код (Text):
    1. BOOL wif_networklist(HANDLE hAdapter)
    2. {
    3.    DWORD dwBytes, dwOIDCode;
    4.    int i;
    5.    NDIS_802_11_BSSID_LIST *pList;
    6.       pList = (NDIS_802_11_BSSID_LIST *)VirtualAlloc(NULL,
    7.             sizeof(NDIS_802_11_BSSID_LIST) * NUMBEROFSSIDS,
    8.             MEM_RESERVE |
    9.             MEM_COMMIT,
    10.             PAGE_READWRITE);
    11.    if (!pList)
    12.          return FALSE;
    13.    else
    14.    {
    15.          memset(pList, 0, sizeof(NDIS_802_11_BSSID_LIST) * NUMBEROFSSIDS);
    16.          dwOIDCode = OID_802_11_BSSID_LIST_SCAN;
    17.          DeviceIoControl(hAdapter,
    18.                IOCTL_NDIS_QUERY_GLOBAL_STATS,
    19.                &dwOIDCode,
    20.                sizeof(dwOIDCode),
    21.                NULL,
    22.                0,
    23.                &dwBytes,
    24.                NULL);
    25.          Sleep(2000);
    26.          memset(pList, 0, sizeof(NDIS_802_11_BSSID_LIST) * NUMBEROFSSIDS);
    27.          dwOIDCode = OID_802_11_BSSID_LIST;
    28.       if (!DeviceIoControl(hAdapter,
    29.                IOCTL_NDIS_QUERY_GLOBAL_STATS,
    30.                &dwOIDCode,
    31.                sizeof(dwOIDCode),
    32.                pList,
    33.                sizeof(NDIS_802_11_BSSID_LIST) * NUMBEROFSSIDS,
    34.                &dwBytes,
    35.                NULL)) return FALSE;
    36.    }
    37.       system("cls");
    38.       printf("[+] Found %i network(s)!\n", pList->NumberOfItems);
    39.    for (i = 0; i < (int)pList->NumberOfItems; i++)
    40.    {
    41.             printf("[+] ID: %i - MAC: %02X-%02X-%02X-%02X-%02X-%02X - Signal: %d dBm - SSID: %s - OPEN: %i\n",
    42.                   i,
    43.                   pList->Bssid[i].MacAddress[0],
    44.                   pList->Bssid[i].MacAddress[1],
    45.                   pList->Bssid[i].MacAddress[2],
    46.                   pList->Bssid[i].MacAddress[3],
    47.                   pList->Bssid[i].MacAddress[4],
    48.                   pList->Bssid[i].MacAddress[5],
    49.                   pList->Bssid[i].Rssi,
    50.                   pList->Bssid[i].Ssid.Ssid,
    51.                   pList->Bssid[i].Privacy);
    52.    }
    53.       return TRUE;
    54. }