Я хотел бы иметь возможность пинговать любую машину, на которой я нахожусь, без необходимости делать следующее:
localhost
Могу ли я сделать что-то вроде следующего?
ping %localhost%
Когда я делаю:
ping localhost
IP-номер — это 127.0.0.1
не то, что мне нужно. Мне нужен IP-номер, назначенный моим маршрутизатором.
решение1
Можно использовать %COMPUTERNAME%
на Windows.
Но это действительно не должно иметь значения, так как пакеты никогда не будут отправлены по сети. Когда вы пингуете собственный адрес компьютера –любойадрес, будь то loopback или нет – Windows распознает это и зацикливает пакеты внутри ОС. Было бы просто непрактично, если бы она делала иначе.
В Windows вы можете убедиться в этом, прочитав таблицу маршрутизации route print
– обратите внимание на столбец «Шлюз»:
C:\>ipconfig | findstr "Адрес" IP-адрес. . . . . . . . . . . : 192.168.1.223 IP-адрес. . . . . . . . . . . . : fe80::202:2dff:fe6b:c71c%6 C:\>route print | findstr "Маска сети 127.0.0.1" СетьМесто назначения Сетевая маска Шлюз Метрика интерфейса 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 192.168.1.223 255.255.255.255 127.0.0.1 127.0.0.1 30
решение2
ipconfig
Чтобы узнать IP-адрес, назначенный вам маршрутизатором, используйте :
Windows IP Configuration
Ethernet adapter Local Area Connection:
Connection-specific DNS Suffix . : <domain>.local
Link-local IPv6 Address . . . . . : <IPv6 address>
IPv4 Address. . . . . . . . . . . : <IPv4 address>
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : <IP Address>
Используйте ping -a localhost
для поиска имени машины.
-a Преобразовать адреса в имена хостов.
решение3
пинг локальный хост
IP-номер 127.0.0.1, а это не то, что мне нужно. Мне нужен IP-номер, назначенный моим маршрутизатором.
localhost определен как 127.0.0.1.
Если вы хотите проверить себя через Интернет, посетите такой сайт, какhttp://www.whatismyip.com/и введите pingайпи адресгдеайпи адресэто адрес, который вы прочитали на сайте.
решение4
Чтобы сделать это одной командой, выполнитеnbtstat -n
nbtstat — это инструмент Windows NetBIOS. Я использовал его для получения имени компьютера других компьютеров из их IP, используяnetbios -A <IPAddress>