Advertisement
niammuddin

get snmp

Dec 6th, 2024 (edited)
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.63 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. # Mengecek apakah parameter subnet dan komunitas SNMP diberikan
  4. if [ -z "$1" ] || [ -z "$2" ]; then
  5.   echo "Usage: $0 <subnet> <community>"
  6.   exit 1
  7. fi
  8.  
  9. # Menampilkan informasi pemindaian
  10. echo "Memulai pemindaian di subnet $1 dengan community string $2"
  11. echo "+-------------------+---------------------------+--------------------------------+"
  12. echo "| IP Address        | sysName                   | sysDescr                       |"
  13. echo "+-------------------+---------------------------+--------------------------------+"
  14.  
  15. # Fungsi untuk memeriksa SNMP hanya sysDescr dan sysName
  16. check_snmp() {
  17.   ip=$1
  18.   community=$2
  19.  
  20.   # Ambil sysDescr dengan timeout yang lebih cepat (1 detik) dan hanya mengambil informasi yang dibutuhkan
  21.   sysDescr=$(snmpwalk -v 2c -c $community -r 1 -t 1 $ip 1.3.6.1.2.1.1.1 2>/dev/null | awk -F "STRING: " '{print $2}')
  22.  
  23.   # Ambil sysName dengan cara yang sama
  24.   sysName=$(snmpwalk -v 2c -c $community -r 1 -t 1 $ip 1.3.6.1.2.1.1.5 2>/dev/null | awk -F "STRING: " '{print $2}')
  25.  
  26.   # Jika SNMP aktif dan sysDescr ditemukan, tampilkan hasilnya
  27.   if [ ! -z "$sysDescr" ]; then
  28.     # Menampilkan hasil dalam format tabel menggunakan printf
  29.     printf "| %-17s | %-25s | %-30s |\n" "$ip" "$sysName" "$sysDescr"
  30.   fi
  31. }
  32.  
  33. export -f check_snmp
  34.  
  35. # Mendapatkan subnet dan komunitas SNMP dari parameter yang diberikan
  36. subnet=$1
  37. community=$2
  38.  
  39. # Loop untuk semua alamat IP dalam subnet, hanya yang merespons
  40. fping -a -g $subnet -q 2>/dev/null | parallel -j 50 check_snmp {} $community
  41.  
  42. # Menutup garis pemisah
  43. echo "+-------------------+---------------------------+--------------------------------+"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement