Как сканировать сеть, чтобы узнать, какие устройства в ней есть? (Я был бы доволен списком MAC-адресов и IP-адресов.)
Например, допустим, я на работе и хочу быть уверенным, что к сети не подключены неизвестные устройства (особенно, если доступ не фильтруется по паролю или MAC). Журналы DHCP могут помочь, но что, если я хочу найти устройства со статическими IP-адресами?
В качестве альтернативы, допустим, я нахожусь в доме друзей, и он хочет, чтобы я настроил переадресацию портов, но не знает IP его маршрутизатора. Конечно, обычно получается несколько хороших догадок, но было бы лучше сканировать.
Для первого сценария посмотрите на Nmap. Вы можете сканировать целые подсети одной командой. Например: nmap -sP 192.168.0.1/24
Во-вторых, IP-адрес маршрутизатора должен отображаться как IP-адрес шлюза для вашего компьютера. В окнах это отображается в диалоговом окне состояния подключения.
Вы можете пинговать широковещательный адрес и увидеть таблицу arp. Вот пример того, как это сделать в Linux:
ping -b 192.168.1.255
arp -n
NB: ОС устройства должна возвращать эхо-запрос ICMP. Некоторые ОС не отвечают на ICMP с широковещательным IP-адресом. В этом случае вы можете пропинговать все возможные IP-адреса в сети. В последнее время окна Windows не отвечают на эхо-запрос ICMP с одноадресным IP-адресом по умолчанию, поэтому это не поможет.
Злой IP-сканер отличный инструмент для этого.
Это также позволит вам экспортировать .csv для использования в инвентаризации IP и т. Д.
я использую Чувак.
Я нашел его здесь вчера, когда искал сетевые инструменты. Запустите его на своем компьютере, и он составит карту всего оборудования в вашей сети. Самое приятное то, что это совершенно бесплатно!
В ответ на второй вопрос:
В Windows
В выводе должна быть строка, в которой указан шлюз по умолчанию. В списке может быть более одного адаптера, но обычно указан только один с IP-адресом и шлюзом по умолчанию.
Spiceworks предоставит вам подробную информацию о вашей сети. Может быть излишним, если вы просто хотите найти IP-адреса и компьютеры Mac, но если вам нужно постоянно контролировать свою сеть, это отличный инструмент. В противном случае используйте nmap.
Приложение для Android Fing просто делает это потрясающе, я бы хотел, чтобы была команда в стиле UNIX, которая могла бы дать аналогичный результат.
nmap, но в противном случае вы можете пропинговать широковещательный адрес сети и проверить, что возвращается. В сочетании с проверкой таблицы ARP это может быть довольно эффективным методом обнаружения того, что находится в данной подсети.
Для конкретного примера «не знает IP-адрес маршрутизатора», проверка таблиц маршрутизации хоста должна выявить шлюз по умолчанию, который (часто, но не всегда) является подходящим IP-адресом управления для маршрутизатора.
Еще один хороший инструмент - look @ lan. Это позволит вам сканировать сеть и даст вам несколько разных результатов.
Если ваша сеть и все ее устройства соответствуют RFC, вы должны получить ответ от всех сетевых устройств, когда вы пинговаете широковещательный адрес вашей сети. Понятно, что это работает не очень часто, и вам нужно вернуться к сканированию каждого доступного IP-адреса на всем спектре портов.
Вы также можете использовать Advance IP Scanner http://www.advanced-ip-scanner.com/ или, как упоминалось выше, Angry IP Scanner - это потрясающий проект с открытым исходным кодом.
Вы можете использовать DevicesInLan в https://sourceforge.net/projects/devicesinlan/. Это с открытым исходным кодом