Я хочу получить информацию обо всех моих сетевых хостах в локальной сети. Мне удалось получить Hostname и Mac-Address уже (через ARP), но мне нужно больше деталей, таких как имя поставщика и другие данные. Есть инструменты сканирования портов, которые могут достичь этого.
Также в Windows 7 перечислены эти сведения о сетевых устройствах, например, для моего телевизора в нем перечислены Samsung как поставщик, серийный номер и даже номер модели. Для моего устройства Android это LG Electronics как поставщик.
Как я могу отсканировать эту информацию с помощью java и какой тип информации это? Это NetBIOS?
благодаря
Сканирование сетевых устройств для сбора информации из них - это целая тема безопасности сама по себе, и поэтому я не буду пытаться ее покрыть. Это также зависит от того, как далеко вы хотите идти.
Если вы просто хотите получить информацию о поставщике, например, вы можете взять MAC-адрес, который вы почерпнули из ARP, и посмотреть биты префикса на список поставщиков, которые их владельцы. Wireshark есть то, что, как представляется, довольно полный список MAC - адреса префиксов поставщиков здесь.
Более того, я предлагаю вам перенести на аутсорсинг тяжелую работу по написанию инструментов аппликации устройств самостоятельно и использовать приложение, такое как NMap, чтобы сделать все это для вас. Я думаю, что у NMap есть опция командной строки, поэтому вам просто нужно вызвать ее из Java и проанализировать в результатах.