У меня есть файл hosts на моей главной машине Linux, и этот файл hosts включает в себя более 1000 IP-адресов, которые определяют множество компонентов, таких как машины Linux и Solaris, коммутаторы, маршрутизаторы, порт EMC и т. д.
пример
192.9.200.23 LinuxM26
192.9.200.24 SolarisM476
192.9.200.25 SolarisM476
192.9.200.26 RouterF938374
192.9.200.27 CiscoSitch47846
192.9.200.28 MasterLinux376
192.9.200.29 SwitchCisco385736
172.17.80.24 UnixWare7.1.1-854776
172.17.80.24 LBA-frhr
172.17.80.25 EMC-storage329478245
.
.
.
.
Моя цель — выполнить автоматический процесс scp со всех машин Linux и Solaris, которые определены в файле hosts, на мою главную машину Linux.
проблема в том, что некоторые хосты в файле хостов не являются Linux или Solaris в качестве коммутаторов и маршрутов
поэтому я думал, как выполнить короткий тест, который скажет нам, являются ли целевые хосты Linux/Solaris или другими, такими как коммутатор/маршрутизатор и т. д.
Я спрашиваю все это, потому что я не могу выполнить scp/ssh для целевого коммутатора/маршрутизатора, потому что это вызовет тревогу от коммутатора (потому что scp/ssh)
поэтому я был бы рад получить какой-нибудь процесс, который определит целевой хост - коммутатор или маршрутизатор, без использования scp/ssh
решение1
Nmap — ваш лучший шанс в таких случаях. Если у вас установлен nmap, просто запустите:
nmap -v -O --osscan-guess