Biraz kafa karışıklığı var gibi görünüyor ... ARP masaları hakkında soruyorsunuz ve OID kullanıyorsunuz .1.3.6.1.2.1.17.4.3.1.2
; ancak, bu OID aslında anahtardaki mac-adres tablosu içindir.
Ubuntu sunucunuza nasıl giriş yapacağınızı bildiğinizi ve bunun NET-SNMP
yüklü olduğunu ... sanırım, bunu yapmak için işaretçilere ihtiyacınız varsa lütfen bana bildirin ( linux'a MIB yükleme hakkında ipuçları için bu soruya bakın ). Örneklerimden bazıları, sunucunuzda MIB'lerin yüklü olduğunu varsayıyor ... -m <mib-name>
MIB'lerin yerel olarak yüklenmemiş olması durumunda komutlardaki seçeneği kaldırmanız gerekir .
Bu cevabın uzunluğu için şimdiden özür dilerim ... SNMP ile oy kullanmak o kadar karmaşık olmasaydı ...
Mac adresi tablosunu yoklama:
Mac adres tablosunu gerçekten anahtardan görmek istiyorsanız, anket yaptığınız topluluk dizesini değiştirmek zorunda olduğunuzu unutmayın ... anket biçiminde olmalıdır <commity@vlan>
.
Aşağıda benim örnekte, 172.16.1.210 de anahtarı ile yapılandırılmış snmp-server community public ro
ve ben yoklama vlan-10 ile de mac adresi masa olduğum dot1dTpFdbPort dan KÖPRÜ-MIB .
[mpenning@tsunami ~]$ snmpbulkwalk -v 2c -c public@10 -OXsq 172.16.1.210 \
.1.3.6.1.2.1.17.4.3.1.2
dot1dTpFdbPort[0:6:53:fe:39:e0] 52
dot1dTpFdbPort[0:1d:a1:cd:53:46] 52
dot1dTpFdbPort[0:30:1b:bc:a7:d7] 52
dot1dTpFdbPort[0:80:c8:0:0:0] 52
dot1dTpFdbPort[38:ea:a7:6d:2e:8e] 52
dot1dTpFdbPort[80:ee:73:2f:b:40] 52
[mpenning@tsunami ~]$
Yukarıdaki çıktıda, 52, dot1dBasePort
MIB'nin dot1dTp tablosunu dizine almak için kullandığı sayıdır. Bunu normal bir arayüz adına çevirmek için, bunu bir ifName ile eşleştirmelisiniz ... BRIDGE-MIB , dot1dBasePortIfIndex ...
[mpenning@tsunami ~]$ snmpbulkwalk -v 2c -c public@10 -m BRIDGE-MIB 172.16.1.210 \
.1.3.6.1.2.1.17.1.4.1.2
BRIDGE-MIB::dot1dBasePortIfIndex.52 = INTEGER: 10048
[mpenning@tsunami ~]$
[mpenning@tsunami ~]$ snmpget -v 2c -c public 172.16.1.210 ifName.10048
IF-MIB::ifName.10048 = STRING: Fa0/48
[mpenning@tsunami ~]$
Böylece, bu anahtardaki tüm mac adreslerinin vlan-10'daki FastEthernet 0/48 aracılığıyla öğrenildiğini biliyoruz.
Aktif Vlans'leri yoklama:
Emin bir anahtar üzerindeki ankete VLAN'lara hangi değilseniz, bunu kimden bilgi alabilirim .1.3.6.1.4.1.9.9.46.1.3.1.1.2
olduğunu vtpVlanState içinde CISCO-VTP-MIB ...
[mpenning@tsunami ~]$ snmpbulkwalk -v 2c -c public -OXsq -m CISCO-VTP-MIB 172.16.1.210 \
.1.3.6.1.4.1.9.9.46.1.3.1.1.2
vtpVlanState[1][1] operational
vtpVlanState[1][10] operational
vtpVlanState[1][1002] operational
vtpVlanState[1][1003] operational
vtpVlanState[1][1004] operational
vtpVlanState[1][1005] operational
[mpenning@tsunami ~]$
Vlans 1002-1005'in anket yapmamanız gereken dahili Cisco Vlans olduğunu unutmayın.
ARP tablosunu yoklama
ARP tablosunu anahtardan gerçekten istiyorsan, o zamanPhysAddress ...
[mpenning@tsunami ~]$ snmpbulkwalk -v 2c -c public -OXsq 172.16.1.210 \
.1.3.6.1.2.1.3.1.1.2
atPhysAddress[10][1.172.16.1.5] "80 EE 73 2F 0B 40 "
atPhysAddress[10][1.172.16.1.25] "38 EA A7 6D 2E 8E "
atPhysAddress[10][1.172.16.1.32] "BC 51 FE 50 16 F8 "
atPhysAddress[10][1.172.16.1.200] "00 06 53 FE 39 E0 "
atPhysAddress[10][1.172.16.1.210] "00 18 BA 51 5B 41 "
[mpenning@tsunami ~]$
Komut çıkışını bir dosyaya kaydetme
Bu sitenin normal kapsamı dışında kalan alanlara giriyoruz, ancak yukarıdaki ARP tablosunu bir dosyaya kaydetmek için yukarıdakilerin sonuna /tmp/S01_ARP.txt
ekleyeceksiniz ...> /tmp/S01_ARP.txt
snmpbulkwalk
[mpenning@tsunami ~]$ snmpbulkwalk -v 2c -c public -OXsq 172.16.1.210 \
.1.3.6.1.2.1.3.1.1.2 > /tmp/S01_ARP.txt
[mpenning@tsunami ~]$ cat /tmp/S01_ARP.txt
atPhysAddress[10][1.172.16.1.5] "80 EE 73 2F 0B 40 "
atPhysAddress[10][1.172.16.1.25] "38 EA A7 6D 2E 8E "
atPhysAddress[10][1.172.16.1.32] "BC 51 FE 50 16 F8 "
atPhysAddress[10][1.172.16.1.200] "00 06 53 FE 39 E0 "
atPhysAddress[10][1.172.16.1.210] "00 18 BA 51 5B 41 "
[mpenning@tsunami ~]$
Yukarıda gördüğünüz gibi, cat
tüm çıktıları bir metin dosyasından almak için linux'ta kullanabilirsiniz . NOT: Bazı linux dağıtımları (ahem ... CentOS) /tmp
dizini aylık olarak temizler . HOME
Dosyayı saklamak için dizini linux'ta kullanmalısınız . Ubuntu'nun temizlediğini hatırlamıyorum /tmp
, ama güvenli olmak için orada saklamaktan kaçınırdım.
SNMP ile ilgili çeşitli notlar
Tüm Cisco'nun MIB'lerini Ubuntu makinenize yüklemediyseniz -m <mib-name>
, snmpbulkwalk
komutlardaki bayrakları kullanmaktan kaçınmalısınız . MIB'leri yüklemek, uzun noktalı sayılar yerine OID adlarıyla anket yapmanızı sağlar ...
Referans bilgisi:
Yukarıdaki SNMP komutları için CLI hakkında sorularınız varsa, anahtara bazı gösteri komutları ekliyorum ...
S01#sh ver | i IOS
Cisco IOS Software, C3560 Software (C3560-IPBASEK9-M), Version 12.2(37)SE, RELEASE SOFTWARE (fc2)
S01#
S01#sh mac address-table dynamic
Mac Address Table
-------------------------------------------
Vlan Mac Address Type Ports
---- ----------- -------- -----
10 0006.53fe.39e0 DYNAMIC Fa0/48
10 001d.a1cd.5346 DYNAMIC Fa0/48
10 0030.1bbc.a7d7 DYNAMIC Fa0/48
10 0080.c800.0000 DYNAMIC Fa0/48
10 38ea.a76d.2e8e DYNAMIC Fa0/48
10 80ee.732f.0b40 DYNAMIC Fa0/48
Total Mac Addresses for this criterion: 6
S01#
S01#sh arp
Protocol Address Age (min) Hardware Addr Type Interface
Internet 172.16.1.210 - 0018.ba51.5b41 ARPA Vlan10
Internet 172.16.1.200 0 0006.53fe.39e0 ARPA Vlan10
Internet 172.16.1.32 0 bc51.fe50.16f8 ARPA Vlan10
Internet 172.16.1.25 0 38ea.a76d.2e8e ARPA Vlan10
Internet 172.16.1.5 1 80ee.732f.0b40 ARPA Vlan10
S01#