Advertisement
Izya12

Untitled

Sep 17th, 2015
143
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 8.37 KB | None | 0 0
  1. #/bin/bash
  2. set -o nounset
  3. set -o errexit
  4.  
  5. . "/etc/CFG_FULL.cfg"
  6.  
  7. #rm $pwd/db_ip_test.txt
  8. #rm $pwd/db_ip_agr.txt
  9.  
  10. #nmap --excludefile $pwd/db_ip_exclude.txt -sn 192.168.212.0/22 | egrep -v "Host|nmap" | awk '{print $5}' | grep "[[:digit:]]" > $pwd/db_ip_test.txt
  11. #nmap --excludefile $pwd/db_ip_agr_exclude.txt -sn 192.168.212.2-49 | egrep -v "Host|nmap" | awk '{print $5}' | grep "[[:digit:]]" > $pwd/db_ip_agr.txt
  12.  
  13. cd $pwd/name_sn
  14. DATE="$(date +"%Y%m%d")"
  15. #------------------------------------------------------------------------------------------------------------------------------------#
  16. #------------------------------------------------------------------------------------------------------------------------------------#
  17. #------------------------------------------------------------------------------------------------------------------------------------#
  18. #Коммутаторы доступа
  19. #------------------------------------------------------------------------------------------------------------------------------------#
  20. #------------------------------------------------------------------------------------------------------------------------------------#
  21. #------------------------------------------------------------------------------------------------------------------------------------#
  22. # Задаем имена таблици
  23. echo "IP, Модель, HW, FW, Всего портов, Улица, Дом, Подъезд, SN, MAC" > LOG/name_sn.db_$DATE.csv
  24.  
  25. AllSnmp ()
  26. {
  27.     SN=$($VARSNMPGET -v2c -c $CommunityRO $IP iso.3.6.1.4.1.171.12.1.1.12.0 | awk '{print $4}' | sed -e "s/\"//g")
  28.     NAMEUL=$($VARSNMPGET -v2c -c $CommunityRO $IP iso.0.8802.1.1.2.1.3.3.0 | awk '{print $4}' | sed -e "s/\"//g" | awk -F "-" '{print $1}')
  29.     NAMEDOM=$($VARSNMPGET -v2c -c $CommunityRO $IP iso.0.8802.1.1.2.1.3.3.0 | awk '{print $4}' | sed -e "s/\"//g" | awk -F "-" '{print $2}')
  30.     NAMEPOD=$($VARSNMPGET -v2c -c $CommunityRO $IP iso.0.8802.1.1.2.1.3.3.0 | awk '{print $4}' | sed -e "s/\"//g" | awk -F "-" '{print $3}')
  31.     MAC=$($VARSNMPGET -v2c -c $CommunityRO $IP iso.0.8802.1.1.2.1.3.2.0 | awk '{print $4 , $5 , $6 , $7 , $8 , $9}' | sed -e "s/ /-/g")
  32.     PORTOV=$($VARSNMPGET -v2c -c $CommunityRO $IP iso.3.6.1.2.1.17.1.2.0 | awk '{print $4}')
  33. #   VLANPPPoE=$($VARSNMPWALK -v2c -c $CommunityRO $IP 1.3.6.1.2.1.17.7.1.4.3.1.1 | grep -E "4.3.1.1.[[:digit:]][[:digit:]][[:digit:]][[:digit:]]" | awk -F "." '{print $9}' | awk '{print $1}' | head -n 1)
  34. #   VLANPPPoEName=$($VARSNMPWALK -v2c -c $CommunityRO $IP 1.3.6.1.2.1.17.7.1.4.3.1.1.$VLANPPPoE | awk '{print $4}' | sed -e "s/\"//g")
  35. #   ZANYATO=$(echo "1")
  36. return
  37. }
  38.  
  39. while read IP
  40. do
  41.  
  42.   HW=$($VARSNMPGET -v2c -c $CommunityRO $IP iso.3.6.1.2.1.16.19.3.0 | awk '{ print $4 }' | sed -e "s/\"//g")
  43.   if [ "$HW" = "A1" -o "$HW" = "B1" ]
  44.     then
  45.       MODEL=$($VARSNMPGET -v2c -c $CommunityRO $IP iso.3.6.1.2.1.1.1.0 | awk '{print $5}' | sed -e "s/\"//g")
  46.       if [[ "$MODEL" = DES-3200* ]]
  47.       then
  48.     #------------------------------------------------------------------------------------------------------------------------------------#
  49.     AllSnmp
  50.     BUILD=$($VARSNMPGET -v2c -c $CommunityRO $IP iso.3.6.1.2.1.47.1.1.1.1.9.1 | awk '{print $4}' | sed -e "s/\"//g")
  51.     if [ "$PORTOV" = "26" ]
  52.     then
  53.       VLANIPTV=$($VARSNMPWALK -v2c -c $CommunityRO $IP 1.3.6.1.4.1.171.11.113.1.5.2.7.8.1.1 | awk '{print $4}' | sed -e "s/\"//g")
  54.     else
  55.       VLANIPTV=$($VARSNMPWALK -v2c -c $CommunityRO $IP 1.3.6.1.4.1.171.11.113.1.3.2.7.8.1.1 | awk '{print $4}' | sed -e "s/\"//g")
  56.     fi
  57.     #echo "$IP, $MODEL, $HW, $BUILD, $PORTOV, $ZANYATO, $NAMEUL, $NAMEDOM, $NAMEPOD, $SN, $MAC, $VLANIPTV, $VLANPPPoE, $VLANPPPoEName" >> LOG/name_sn.db_$DATE.csv
  58.     echo "$IP, $MODEL, $HW, $BUILD, $PORTOV, $NAMEUL, $NAMEDOM, $NAMEPOD, $SN, $MAC" >> LOG/name_sn.db_$DATE.csv
  59.       elif [[ "$MODEL" = DES-1228* ]]
  60.       then
  61.     AllSnmp
  62.     BUILD=$($VARSNMPGET -v2c -c $CommunityRO $IP  1.3.6.1.2.1.16.19.2.0 | awk '{print $5}' | sed -e "s/\"//g")
  63.     VLANIPTV=$($VARSNMPWALK -v2c -c $CommunityRO $IP 1.3.6.1.4.1.171.11.116.2.2.7.8.1.1 | awk '{print $4}')
  64.     #echo "$IP, $MODEL, $HW, $BUILD, $PORTOV, $ZANYATO, $NAMEUL, $NAMEDOM, $NAMEPOD, $SN, $MAC, $VLANIPTV, $VLANPPPoE, $VLANPPPoEName" >> LOG/name_sn.db_$DATE.csv
  65.     echo "$IP, $MODEL, $HW, $BUILD, $PORTOV, $NAMEUL, $NAMEDOM, $NAMEPOD, $SN, $MAC" >> LOG/name_sn.db_$DATE.csv
  66.       fi
  67.  
  68.     #------------------------------------------------------------------------------------------------------------------------------------#
  69.     elif [ "$HW" = "C1" -o "$HW" = "A3" ]
  70.     then
  71.       #------------------------------------------------------------------------------------------------------------------------------------#
  72.       AllSnmp
  73.       MODEL=$($VARSNMPGET -v2c -c $CommunityRO $IP iso.3.6.1.2.1.1.1.0 | awk '{print $4}' | sed -e "s/\"//g")
  74.       BUILD=$($VARSNMPGET -v2c -c $CommunityRO $IP iso.3.6.1.2.1.47.1.1.1.1.9.1 | awk '{print $4}' | sed -e "s/\"//g")
  75.       VLANIPTV=$($VARSNMPWALK -v2c -c $CommunityRO $IP 1.3.6.1.4.1.171.12.64.3.1.1.1 | awk '{print $4}' | sed -e "s/\"//g")
  76.       #echo "$IP, $MODEL, $HW, $BUILD, $PORTOV, $ZANYATO, $NAMEUL, $NAMEDOM, $NAMEPOD, $SN, $MAC, $VLANIPTV, $VLANPPPoE, $VLANPPPoEName" >> LOG/name_sn.db_$DATE.csv
  77.       echo "$IP, $MODEL, $HW, $BUILD, $PORTOV, $NAMEUL, $NAMEDOM, $NAMEPOD, $SN, $MAC" >> LOG/name_sn.db_$DATE.csv
  78.       #------------------------------------------------------------------------------------------------------------------------------------#
  79.     else
  80.       #------------------------------------------------------------------------------------------------------------------------------------#
  81.       AllSnmp
  82.       MODEL=$($VARSNMPGET -v2c -c $CommunityRO $IP iso.3.6.1.2.1.1.1.0 | awk '{print $5}' | sed -e "s/\"//g")
  83.       BUILD=$($VARSNMPGET -v2c -c $CommunityRO $IP iso.3.6.1.2.1.47.1.1.1.1.9.1 | awk '{print $4}' | sed -e "s/\"//g")
  84.       VLANIPTV=$($VARSNMPWALK -v2c -c $CommunityRO $IP 1.3.6.1.4.1.171.11.113.1.3.2.7.8.1.1 | awk '{print $4}' | sed -e "s/\"//g")
  85.       #echo "$IP, $MODEL, $HW, $BUILD, $PORTOV, $ZANYATO, $NAMEUL, $NAMEDOM, $NAMEPOD, $SN, $MAC, $VLANIPTV, $VLANPPPoE, $VLANPPPoEName" >> LOG/name_sn.db_$DATE.csv
  86.       echo "$IP, $MODEL, $HW, $BUILD, $PORTOV, $NAMEUL, $NAMEDOM, $NAMEPOD, $SN, $MAC" >> LOG/name_sn.db_$DATE.csv
  87.       /bin/echo "$IP $HW" >> $pwd/name_sn/erorr_log_$DATE.log
  88.       #------------------------------------------------------------------------------------------------------------------------------------#
  89.   fi
  90.  
  91.  
  92. done < $pwd/db_ip_test.txt
  93. #------------------------------------------------------------------------------------------------------------------------------------#
  94. #------------------------------------------------------------------------------------------------------------------------------------#
  95. #------------------------------------------------------------------------------------------------------------------------------------#
  96. #Коммутаторы агригации
  97. #------------------------------------------------------------------------------------------------------------------------------------#
  98. #------------------------------------------------------------------------------------------------------------------------------------#
  99. #------------------------------------------------------------------------------------------------------------------------------------#
  100. # Задаем имена таблици
  101. #echo "IP, Модель, Всего портов, FW, Адрес, SN, MAC" > LOG_AGR/name_sn.db_agr_$DATE.csv
  102.  
  103. #while read IP
  104. #do
  105. #  #------------------------------------------------------------------------------------------------------------------------------------#
  106. #  SN=$($VARSNMPGET -v2c -c $CommunityRO $IP iso.3.6.1.4.1.171.12.1.1.12.0 | awk '{print $4}' | sed -e "s/\"//g")
  107. #  NAME=$($VARSNMPGET -v2c -c $CommunityRO $IP iso.0.8802.1.1.2.1.3.3.0 | awk '{print $4}' | sed -e "s/\"//g")
  108. #  MODEL=$($VARSNMPGET -v2c -c $CommunityRO $IP iso.3.6.1.2.1.1.1.0 | awk '{print $4}' | sed -e "s/\"//g")
  109. #  MAC=$($VARSNMPGET -v2c -c $CommunityRO $IP iso.0.8802.1.1.2.1.3.2.0 | awk '{print $4 , $5 , $6 , $7 , $8 , $9}' | sed -e "s/ /-/g")
  110. #  BUILD=$($VARSNMPGET -v2c -c $CommunityRO $IP iso.3.6.1.2.1.47.1.1.1.1.9.1 | awk '{print $4}' | sed -e "s/\"//g")
  111. #  PORTOV=$($VARSNMPGET -v2c -c $CommunityRO $IP iso.3.6.1.2.1.17.1.2.0 | awk '{print $4}')
  112. #  echo "$IP, $MODEL, $PORTOV, $BUILD, $NAME, $SN, $MAC" >> LOG_AGR/name_sn.db_agr_$DATE.csv
  113.   #------------------------------------------------------------------------------------------------------------------------------------#
  114. #done < $pwd/db_ip_agr.txt
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement