Как узнать, занял ли кто-то определенный IP-адрес в локальной сети? Или в более обобщенной форме, как найти список IP-адресов, которые DHCP выделил в локальной сети?
3 ответа
Если вы хотите узнать, что арендовал ваш DHCP-сервер, вам нужно проконсультироваться с этим DHCP-сервером. В Linux (Debian с isc-dhcp-server
) вы хотите посмотреть файл /var/lib/dhcpd/dhcp.leases
.
Если вы хотите узнать, использует ли этот IP-адрес другая машина без этого, попробуйте несколько способов:L
Используйте команду
arp
чтобы увидеть, появляется ли IP-адрес в таблицеarp
вашей системы. Если это произойдет, ваша система, вероятно, недавно установила связь с этим IP, и что-то ответило.ping
IP и посмотреть, если вы получите ответ.Используйте
telnet
илиnc
чтобы установить TCP-соединение с известным работающим сервисом. Это требует, чтобы вы знали, какие службы могут работать, и, конечно, если они не работают, это может означать, что службы не работают или заблокировали вас локально.Установите
arping
и используйте его для выдачи ARP-запросов напрямую.
Используйте nmap
в ответе @ vembutech, если вы хотите сканировать сеть на предмет ответов. Будьте осторожны, он может генерировать трафик, который выглядит враждебно, если вы находитесь в корпоративной локальной сети.
Вам необходимо установить nmap
в Терминале с правами root:
sudo apt-get install nmap
Следующая команда находит все определенные сетевые IP-адреса:
nmap -sP 172.16.1.*
Это зависит от вашего DHCP-сервера.
В большинстве сетей он лежит на роутере. как правило, они имеют веб-интерфейс, к которому вы можете получить доступ, который покажет вам все активные аренды и связанные с ними mac-адреса.
Кто-то упомянул, что вы можете использовать nmap, чтобы увидеть, какие IP-адреса в сети. Это правда. Nmap не будет отображать дублирующиеся адреса и не будет отображать информацию об аренде (например, он также будет показывать IP-адреса, которые были назначены статически). Это может или не может соответствовать вашим целям.