Dúvida em Bash [snmpget] - laço para descrições de placa de rede! [RESOLVIDO]

1. Dúvida em Bash [snmpget] - laço para descrições de placa de rede! [RESOLVIDO]

willian valmorbida
valmorbida

(usa openSUSE)

Enviado em 13/11/2015 - 14:27h

Gostaria de saber se tem como buscar todas as interfaces de rede de um micro utilizando laços com o script abaixo:


#!/bin/bash

c=1
while [ $c -le 5 ] ; do
echo $(snmpget -v2c -Ov -Oq localhost -c public ifDescr.$c)
let c=c+1
done


Executando dessa maneira ele me retorna o nome das interfaces, porem dessa maneira:


lo
enp0s3
No Such Instance currently exists at this OID
No Such Instance currently exists at this OID
No Such Instance currently exists at this OID


teria alguma forma de tratar a saida para que mostrasse só as placas existentes? porem que o script continuasse a verificar se existem mais placas conectadas?


  


2. MELHOR RESPOSTA

Fabiano
fpires

(usa Debian)

Enviado em 13/11/2015 - 16:14h

A variável ifNumber.0 armazena a quantidade de interfaces de rede do sistema. Assim, basta utilizá-la como limite superior do seu loop.


3. Re: Dúvida em Bash [snmpget] - laço para descrições de placa de rede! [RESOLVIDO]

willian valmorbida
valmorbida

(usa openSUSE)

Enviado em 13/11/2015 - 16:32h

fpires escreveu:

A variável ifNumber.0 armazena a quantidade de interfaces de rede do sistema. Assim, basta utilizá-la como limite superior do seu loop.


fpires, Obrigado!

não sabia que havia uma MIB com a quantidade de interfaces!

o Script então ficou assim:


#!/bin/bash

#variaveis
c=1
nint=$(snmpget -v2c -Ov -Oq localhost -c public ifNumber.0)

#loop para descoberta de interfaces

while [ $c -le $nint ] ; do
echo $(snmpget -v2c -Ov -Oq localhost -c public ifDescr.$c)
let c=c+1
done



E o retorno assim:


lo
enp0s3


Novamente Obrigado!!




4. Re: Dúvida em Bash [snmpget] - laço para descrições de placa de rede! [RESOLVIDO]

Fabiano
fpires

(usa Debian)

Enviado em 13/11/2015 - 21:47h

Que eu saiba, toda tabela no SNMP tem um valor (normalmente no começo da própria tabela) para informar quantos campos a tabela tem, permitindo que você faça a quantidade de iterações correta/necessária.







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts