Intervalo de rede de varredura do script de shell para OIDs SNMP específicos:
#!/bin/bash
# snmpget command poll the network range for certain OIDs
for (( i=254; $i; i=$i-1 )) do
host=10.77.32.$i;
snmpget -v 2c -c public -t 0.5 -r 1 $host iso.3.6.1.2.1.2.2.1.6.1 iso.3.6.1.2.1.2.2.1.6.2 iso.3.6.1.2.1.2.2.1.6.16;
done;
read -p 'press Enter to continue...'
É possível modificar ligeiramente o script para duas opções:
i.e. O intervalo de rede precisa ser pesquisado para OIDs específicos, ele tem como alvo o MAC presente naquele OID, ele deve ser impresso. Os outros endereços MAC são ignorados - mesmo que determinados OIDs estejam presentes, mas não contenham nenhum endereço MAC de destino, eles não serão impressos:
...
Timeout: No Response from 10.77.32.242.
Timeout: No Response from 10.77.32.241.
iso.3.6.1.2.1.2.2.1.6.1 = Hex-STRING: 00 09 4B EF D2 02
iso.3.6.1.2.1.2.2.1.6.2 = Hex-STRING: E4 46 C5 B7 93 14
Timeout: No Response from 10.77.32.239.
Timeout: No Response from 10.77.32.238.
...
A segunda opção é difícil, seria suficiente para estender o alcance.