#c# #.net #mobile
#c# #.net #Мобильный
Вопрос:
Я знаю, что есть другие сообщения, которые немного затрагивают это, но я хотел бы знать, как (или если это вообще возможно), используя C #, получить MAC-адрес беспроводной точки доступа, с которой пользователь обращается к сайту или другому API на основе HTTP. Я работаю в больнице, и местоположение всех наших WAP известно, и я хотел бы продолжить настройку решения для поиска путей, которое не зависит от конкретных API-интерфейсов мобильных устройств для определения MAC-адресов или GPS (поскольку я бы хотел, чтобы это работало и внутри зданий). Я также хотел бы не использовать что-то вроде Skyhook.
Если MAC-адрес не может быть получен, возможно, лучшим решением будет назначить определенные IP-блоки для каждого WAP, а затем просто посмотреть IP-адреса?
Заранее спасибо
Ответ №1:
В зависимости от имеющихся у вас WAP, вы можете использовать SNMP для получения информации. Вам нужно посмотреть, какие MIB (база управленческой информации) поддерживаются, чтобы найти нужную информацию.
Использование SharpSNMP API было бы хорошим началом (http://sharpsnmplib.codeplex.com /).
На данный момент я должен сообщить вам, что MAC-адреса не являются уникальными, что делает процесс их использования проблематичным. Даже в больнице вы обнаружите, что существуют повторяющиеся MAC-адреса, что делает использование этого метода идентификации в лучшем случае нецелесообразным.
Если ваше приложение для поиска путей предназначено преимущественно для использования внутри здания, то использование WAP-позиционирования приведет к высокой погрешности. Это вызвано относительно большим радиусом действия до 150 футов. Таким образом, вы можете найти их с погрешностью до 150 футов. Не обязательно то, что вам нужно, особенно учитывая все эти разные уровни.
Комментарии:
1. Спасибо! Я знаю, что не собирался добиваться высокого уровня точности, делая это таким образом, но мне было любопытно, как это сделать. Я уверен, что смогу заставить нашу сетевую команду изменить MAC-адреса, если действительно есть ошибки. Раньше не думал о SNMP — спасибо!