У меня безголовая 32-битная коробка Windows 7 Pro без графики. Я подключаюсь к нему с помощью RDP через локальную сеть. Я настроил его в качестве клиента DHCP (с сервером, предоставляющим статический адрес) с альтернативным статическим адресом в диапазоне APIPA, чтобы при отсутствии DHCP-сервера я мог подключиться к нему напрямую с помощью кабеля Ethernet (порты Auto MDIX) и использовать адрес APIPA.

Если на этом компьютере вместо DHCP задан статический адрес, альтернативный адрес становится неактивным. Если статический адрес пропущен или забыт, как я могу получить доступ к этому аппарату, чтобы сбросить его до DHCP или исправить статический адрес? Он имеет последовательный порт и порт USB, но только один порт Ethernet. Я могу сделать любую конфигурацию или установить программное обеспечение на устройстве заранее, например, что-то, что позволяет RDP через последовательное соединение ??

Благодарю.

1 ответ1

1

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

Если вы не знаете IP-адрес, тогда ваша проблема становится проблемой обнаружения сети, и, вероятно, самый простой способ - это карта портов. Размер локальной подсети ссылки составляет большую часть подсети /16, что означает, что у вас есть лучшая часть из 2 ^ 16 хостов для сканирования (еще одно преимущество выбора меньшей локальной подсети и статической настройки вместо использования ссылки, определенной в RFC) - локальная подсеть, у которой намного меньше хостов для сканирования). Хорошая утилита portmap (nmap - мой любимый) сможет сканировать данный порт по всему диапазону адресов. К сожалению, вам может потребоваться выполнить несколько разных сканирований, чтобы покрыть довольно произвольно (и неудобно!) определенный локальный диапазон канала 169.254.1.0 - 169.254.254.255, который нельзя определить как подсеть битовой маски CIDR, так как это 168.254 /16 "минус" 169.254.0 /24 "минус" 169.254.255.0/24, но вы можете сделать что-то подобное в оболочке bash:

for i in `seq 1 254`; do 
   nmap -p 3389 169.254.$i.0/24; 
done > rdp-listens.txt 2>&1 

Так как это будет генерировать много выходных данных, я перенаправил его в файл для просмотра после его завершения. Но это довольно много усилий, по сравнению с тем, чтобы просто дать ему один статический IP в вашей сети и записать его в заметку, которая прикреплена к коробке :).

Существуют и другие варианты, в том числе упомянутые другими, но они не так уверены в «хлопающем данке». Кратко:

Проверка связи по имени компьютера может работать, если вы знаете имя компьютера. Если мы не говорим о DNS (и хотя это возможно, большинство конфигураций DNS/DHCP не настраивают записи DNS A или PTR между именами хостов, предоставляемыми клиентом и IPS, предоставленными DHCP), которые будут именами компьютеров Windows, и я не не знаю, как именно будет работать разрешение.

Я скептически отношусь к анализу проводов. Wireshark или аналогичный режим потребует фактического просмотра трафика RDP для этого хоста, чтобы помочь вам определить его IP. Есть несколько проблем с этим. Во-первых, если это не сеть с общим доменом коллизий (беспроводная сеть или сеть, подключенная к концентратору), вы никогда не увидите эти пакеты. Учитывая сценарий, я предполагаю, что вы не используете Wi-Fi, и вы были бы единственным человеком в мире, имеющим проводную сеть на концентраторе, поэтому у вас, вероятно, есть коммутируемая сеть Ethernet, что означает, что вы никогда не увидите этот трафик. (Некоторые причудливые коммутаторы допускают подобные вещи, но поскольку ваша корневая проблема заключается в том, что «я беспокоюсь, я не буду знать IP», я предполагаю, что это не уровень предприятия). Так что вряд ли найдется простой способ прослушать эту информацию из сети. Во-вторых, это потребовало бы, чтобы трафик уже был в сети - учитывая сценарий, я предполагаю, что в сценарии, где вы не знаете IP-адрес, не будет трафика RDP, и если есть, вы можете просто спросить ваши соотечественники какой у него IP :)

Последний подход, о котором я могу подумать, может быть ARP. Вы должны быть в состоянии ARP сетевой адрес, учитывая MAC-адрес сетевого интерфейса. Однако я не уверен, что рассматриваемый IP-адрес обязательно будет в таблицах ARP.

Надеюсь, поможет!

http://en.wikipedia.org/wiki/Link-local_address http://en.wikipedia.org/wiki/Classful_network

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