Domanda

sto bisogno di ping circa 2500 server in una sola volta, a intervalli di circa 15-30 minuti. Questo è quello di mostrare semi-reale le informazioni sullo stato del server di tempo. Questo potrebbe potenzialmente scalare a decine di migliaia di siti alla fine, quindi ho bisogno di tenere a mente mentre il pensiero su questo.

sto usando un Ubuntu 10.10 VPS (Bash) e l'utilizzo di Ruby.

C'è un modo per andare a fare questo?

Edit: Vorrei anche notare che solo cura se il server è in linea. Quindi, prima pacchetto ricevuto dovrebbe essere sufficiente.

È stato utile?

Soluzione

mi piacerebbe prendere in considerazione sborsare per nmap o il suo simile. E 'ben sintonizzata su tale scopo, essendo abbastanza veloce, e contiene abbastanza modi diversi di rumore metallico per soddisfare qualsiasi esigenza. Ecco utilizzando nmap per scoprire tutte le strutture su un segmento della mia rete:

wayne@treebeard:~$ nmap -sP 10.0.0.0/24
Starting Nmap 5.00 ( http://nmap.org ) at 2010-12-08 09:16 MST
Host gw (10.0.0.1) is up (0.00036s latency).
Host 10.0.0.2 is up (0.0071s latency).
Host isengard.internal.databill.com (10.0.0.3) is up (0.00062s latency).
...
Host arod.internal.databill.com (10.0.0.189) is up (0.0046s latency).
Host 10.0.0.254 is up (0.00042s latency).
Nmap done: 256 IP addresses (43 hosts up) scanned in 3.00 seconds

Qui abbiamo digitalizzato per tutti gli host da 10.0.0.0 attraverso 10.0.0.255.

-sP è un "ping scan", un meccanismo di host discovery piuttosto generica che può essere eseguito come utente normale. Ci sono altri tipi di scansione nmap fa, molti di loro bisogno dei privilegi di root.

In Ruby, si userà apice inverso o IO.popen per eseguire nmap e catturare i suoi risultati:

output = `nmap -sP 10.0.0.0/24
output.each_line.find_all do |lines|
  line =~ /^Host/
end.each do |line|
  # Whatever you want to do for each host
end

Se si fornisce l'interruttore -oX, nmap xml uscita volontà, che può essere più facile da analizzare (grazie, Tadman).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top