%20%D0%B8%20%D0%B8%D0%B7%D0%B2%D0%BB%D0%B5%D0%BA%D0%B8%D1%82%D0%B5%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5%20ARP..png)
Я пытаюсь придумать способ сделать это уже несколько дней, но пока ничего не придумал. В идеале вот что я хочу сделать:
На машине с Windows XP мне нужно открыть SSH-соединение с удаленным хостом, отправить команду arp и извлечь текстовые результаты команды для использования на клиенте. Мне нужно будет проанализировать эти данные и, желательно, создать двумерный массив IP-адресов и MAC-адресов. Не будет общих ключей, все это делается с именем пользователя и паролем, которые всегда будут разными, их нужно будет вводить в команду через переменные, которые будут извлечены из базы данных с помощью скрипта autoit на основе WAN-IP удаленного хоста.
Теперь фактический разбор данных и создание массива будут простыми, если я смогу просто получить текст таблицы arp. Есть ли способ подключиться по ssh к удаленному хосту, выполнить команду и вернуть данные из этой команды клиенту в пакетном скрипте или скрипте perl (это нормально, если он записывает текст в файл, я могу прочитать его из файла позже, мне просто нужно, чтобы он попал к клиенту)?
решение1
Использование PuTTY plink
:
plink <server> arp
Если это не сработает:
echo arp | plink <server>
Если система работает под управлением Linux и ip
команда доступна, используйте ее. Формат проще для анализа:
plink <server> /sbin/ip -o -f inet neigh
plink <server> /sbin/ip -o -f inet6 neigh
решение2
Используя PuTTY, вы можете указать имя пользователя и пароль следующим образом:
- putty -pw пароль имя_пользователя@имя_хоста
Кроме того, ключ командной строки «-m» также позволит вам указать текстовый файл, из которого будут считываться команды для выполнения на сервере после подключения.
PuTTY можно скачать здесь:
PuTTY (бесплатно и с открытым исходным кодом)
http://www.chiark.greenend.org.uk/~sgtatham/putty/