Alpern
Partager en toute liberté

Categories

Accueil du site > Ruby développement > test

test

test

lundi 8 décembre 2008, par alpern

host = ARGV[0] || '10.0.192.1'
community = ARGV[1] || '###'
fichier = File.new(host + "-mac.log", "w")
# Lecture de la table des adresses mac le port represente l'index de la mibe bridge"
require 'snmp'
IndexPort = ["1.3.6.1.2.1.17.1.4.1.2."]
IndexPort1 =["1.3.6.1.2.1.31.1.1.1.1."]
MacTable_columns = ["1.3.6.1.2.1.17.4.3.1.1", "1.3.6.1.2.1.17.4.3.1.2", "1.3.6.1.2.1.17.4.3.1.3"]
SNMP::Manager.open(:Host => host ,:Community => community) do |manager|
    manager.walk(MacTable_columns) do |mac, port, type|
             if  type.value = 3
         mac.each { |vb| fichier.print(vb.value.unpack("H2H2H2H2H2H2").join(":")) }
                  port.each { |vb|
                      #trouver l'eindex du port
                          reponse = manager.get(IndexPort[0] + vb.value.to_s)
                          reponse.each_varbind do |ar|
                                 #trouver le name port
                                 reponse = manager.get(IndexPort1[0] + ar.value.to_s)
                                 reponse.each_varbind do |ab|
                             fichier.print("\,#{ab.value}")
                                 end
                               end}
                  type.each { |vb| fichier.print("\,#{vb.value}")}
         fichier.puts()
                  end
    end
         fichier.close
end
puts("Voila")

4 Messages de forum

Répondre à cet article