29

Я знаю, что есть одна строка команды и ее аргументы, которые могут помочь отобразить все IP-адреса компьютера (те, которые используются) в локальной сети, и мой компьютер также является клиентом, как один из отображаемых, но я забыл. Что это?

9 ответов9

26

Вы можете выполнить команду arp -a чтобы показать все записи ARP в таблице о компьютерах в вашей сети.

Источник

17

Не все с IP-адресом - это компьютер - я обнаружил, что ни одно из этих предложений не вернуло все активные IP-адреса - на самом деле большинство возвратило очень мало. В моей домашней сети есть комбинация проводных и беспроводных устройств и два маршрутизатора, мобильные телефоны, телевизор, PVR, Apple AirPort и, вероятно, некоторые вещи, которые я забыл. Я использовал следующее для сканирования всех адресов в подсети 192.168.1.xxx:

for /L %i in (0,1,255) do ping -n 1 -w 250 192.168.1.%i>>ipaddress.txt

Получившийся файл ipaddress.txt содержит результаты ping для всех адресов, и я искал те, у которых " Received = 1 " - в настоящее время 16 адресов вернули результат - у меня только 4 компьютера в доме - и они не все были включены.

13

Существует команда net view /all которой перечислены все имена компьютеров, подключенных к одной и той же локальной сети.

Отсюда вы можете получить отдельные IP-адреса с помощью команды nslookup <computer name> или написать пакетный скрипт, который сделает это за вас.

Вот пример пакета, который я собрал для иллюстрации.

@echo off
setlocal EnableDelayedExpansion
set "xNext="
set "xComputer="
for /f %%A in ('net view /all') do (
    set "xComputer=%%~A"
    if "!xComputer:~0,2!"=="\\" for /f "tokens=2,* delims=. " %%X in ('nslookup %%A') do (
        if "!xNext!"=="1" (
            echo.!xComputer! = %%X.%%Y
            set "xNext=0"
        )
        if "!xComputer:~2!"=="%%~X" set "xNext=1"
    )
)
endlocal
pause
5

Кроме arp -a , net view /all или написания пакетного скрипта, для этого нет встроенной / встроенной командной строки (по крайней мере, я не знаю).

Если вы хотите использовать не родную команду, я бы предложил использовать Nmap. Вы можете запустить nmap -sn 192.168.0.0/24 (заменив подсеть соответствующей подсетью для вашей локальной сети), чтобы добиться того, что вы ищете, более надежно, чем net view /all или arp -a на мой взгляд.

2

ipconfig /all (используйте косую черту, а не назад)

0
echo ls %USERDNSDOMAIN%|nslookup
0

Как указано кем-то другим, вы можете использовать arp -a однако сначала убедитесь, что вы пропингуете широковещательный адрес, чтобы ARP сообщал обо всех устройствах. Например, ping 192.168.0.255

вы получите список всех устройств, подключенных к сети по их IP и MAC-адресам. Вы можете найти MAC-адреса на веб-сайте, таком как https://aruljohn.com/mac.pl, чтобы узнать, кто является поставщиком NIC. Это должно помочь вам сузить, что большинство устройств. т.е. компьютеры, принтеры, телевизор, мобильный телефон и т. д.

0

отобразить все IP-адреса компьютера (те, которые используются)

Я думаю, что вы можете иметь в виду netstat -a это дает вам активный список. Если вы хотите узнать программу по IP-адресу, используйте netstat -b (откройте как администратор).

0

Это мое быстрое решение. Он сообщает вам, какой тип устройства подключен к каждому IP-адресу:

netstat -r 

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .