मैक पते से OUI विक्रेता जानकारी प्राप्त करने के लिए कमांड-लाइन टूल?


14

मुझे कुछ उपकरण मिले हैं जो मेरे सिस्टम पर OUI मैक एड्रेस वेंडर डेटाबेस को अपडेट करने के लिए लगता है, जैसे get-oui , airodump-ng-oui-update या update-oui:

update-oui(8)                          OUI                         update-oui(8)

NAME
       update-oui - download new version of the OUI and IAB lists

SYNOPSIS
       update-oui

DESCRIPTION
       update-oui  fetches  the  current  version  of the OUI and IAB lists from
       http://standards.ieee.org/regauth/oui/index.shtml and installs it, if the
       installed versions is older than 5 days.

       This utility requires curl, wget or libwww-perl to be installed.

OPTIONS
       -q     Be quiet. Do not output messages.

       -f     Force the update, even if the file is newer than 5 days.

FILES
       /usr/share/misc/
              Directory holding symbolic links to oui.txt and iab.txt

लेकिन अगर मैं अपने नेटवर्क पर आईपी खोजता हूं:

luis@Zarzamoro:~$ sudo netdiscover -i eth1

 92 Captured ARP Req/Rep packets, from 12 hosts.   Total size: 5520
 _____________________________________________________________________________
   IP            At MAC Address      Count  Len   MAC Vendor
 -----------------------------------------------------------------------------
 192.168.4.31    bc:f1:f2:12:b4:93    60    3600   Unknown vendor
 192.168.4.24    f0:db:e2:de:11:80    02    120   Unknown vendor
 192.168.4.242   00:1d:7e:9c:6e:fc    05    300   Cisco-Linksys, LLC
 192.168.4.243   00:1c:10:64:63:ac    05    300   Cisco-Linksys, LLC
 192.168.4.244   00:1c:10:64:5f:94    05    300   Cisco-Linksys, LLC
 192.168.4.1     d8:61:94:e5:0b:1d    05    300   Unknown vendor
 192.168.4.246   00:1a:70:2f:ab:4b    04    240   Cisco-Linksys, LLC
 192.168.4.10    84:11:9e:2b:1c:d6    01    060   Unknown vendor
 192.168.4.11    ec:1f:72:5d:42:d0    02    120   Unknown vendor
 192.168.4.245   00:1a:70:2f:aa:63    01    060   Cisco-Linksys, LLC
 192.168.4.248   00:1a:70:2f:aa:d1    01    060   Cisco-Linksys, LLC
 192.168.4.251   44:d9:e7:0a:0b:98    01    060   Unknown vendor

जब तक कुछ एमएसीएस रिपोर्ट किए जाते हैं Unknown vendor, तब तक मैं इसकी जानकारी के लिए किसी भी ओयूआई डेटाबेस पर खोज करना चाहूंगा।

इस खोज को करने के लिए उचित कमांड-लाइन तरीका क्या है ? शायद कुछ इस तरह:

oui-info 44:d9:e7

नोट: मुझे पता है कि मैं वेब ब्राउज़र का उपयोग करके मैक की पहली 3 जोड़ियों के लिए Google कर सकता हूं, लेकिन मुझे कुछ कमांड-लाइन विधि पसंद आएगी, इसलिए मैं इसे स्क्रिप्ट कर सकता हूं या रिमोट लॉगिन (एसएसएच) के माध्यम से उपयोग कर सकता हूं।

जवाबों:


2

हालाँकि इसे और अधिक सुरुचिपूर्ण ढंग से लिखा जा सकता है, विशेष संकुल पर किसी भी निर्भरता के बिना लिनक्स डिस्ट्रोस में निम्नलिखित कार्य करता है। यह आईपी आदेश के उत्पादन को पार्स करता है, एक चर जो अंत में है में से मैक पते विक्रेता भाग को अलग कर ग्रेप विक्रेता उपसर्गों के एक ऑनलाइन डीबी के माध्यम से 'एड।

#!/bin/bash

OUI=$(ip addr list|grep -w 'link'|awk '{print $2}'|grep -P '^(?!00:00:00)'| grep -P '^(?!fe80)' | tr -d ':' | head -c 6)

curl -sS "http://standards-oui.ieee.org/oui.txt" | grep -i "$OUI" | cut -d')' -f2 | tr -d '\t'

रचनात्मकता के एक बिट के साथ आप ssh के माध्यम से दूरस्थ रूप से निष्पादित करने के लिए इसे अनुकूलित कर सकते हैं। मैंने dmidecodeओएस फिंगरप्रिंटिंग के लिए उपयोग करने वाले विक्रेता विवरण की पहचान करने के लिए अन्य सुझाव देखे हैं , लेकिन परीक्षण करते समय उस उपकरण के साथ असंगत परिणाम का अनुभव किया। रास्पबेरी पाई पर dmidecodeपूरी तरह से विफल रहता है। HTH-


यह मेरी विनम्र राय में सबसे अच्छा जवाब है, क्योंकि यह बिना (लगभग) स्थापित टूल की आवश्यकता के बिना एक उत्तर देता है, और, जब तक IEEE.Org अपडेट रहता है (यह होना चाहिए), यह एक्सेस करने के लिए सबसे अच्छा डेटाबेस होना चाहिए। केवल नकारात्मक पक्ष इंटरनेट की आवश्यकता है; आजकल कोई बड़ा मुद्दा नहीं है।
सिपालाजो डे एरियेरेज़

निजी व्यक्तियों / कामगारों द्वारा बहुत सारे OUI ऑनलाइन डेटाबेस चलाए जा रहे थे। लेकिन मैंने ieee.org को चुना क्योंकि इसमें गायब होने या लिंक बदलने का जोखिम कम था। खुशी है कि मैं आपकी मदद कर सकता
हूं-

14

मुझे नहीं लगता कि जो आप पूछते हैं, उसे करने के लिए एक स्वचालित उपकरण है, लेकिन सीधे oui.txt पर काम करके किया जा सकता है।

सबसे पहले, यह डाउनलोड की गई फ़ाइल की पहचान करता है, उदाहरण के लिए:

root@kalilloX:~# locate oui.txt
/var/lib/ieee-data/oui.txt

फिर उस स्ट्रिंग को खोजें जिसे आप रुचि रखते हैं। आपको निकालना :या डालना चाहिए -:

root@kalilloX:~# grep -i "44d9e7" /var/lib/ieee-data/oui.txt
44D9E7     (base 16)        Ubiquiti Networks, Inc.

और अप्रत्यक्ष विधि, लेकिन पूरी तरह से कार्यात्मक, और शायद किसी भी * nix, यहां तक ​​कि कुछ एम्बेडेड उपकरणों पर मान्य है। धन्यवाद।
शोपाजो डे एरियेरेज़

1
उपयोग में आसानी के लिए, आप अपने फ़ंक्शन .bashrcको निम्नानुसार परिभाषित कर सकते हैं : oui() { grep -i "$1" /var/lib/ieee-data/oui.txt; }और इसे इस तरह से उपयोग कर सकते हैंoui 44D9E7
अरालोक्स

4

LilloX में से एक के लिए एक समान जवाब है, लेकिन nMap का उपयोग कर (यदि सिस्टम में स्थापित):

luis@balanceador:~$ locate nmap-mac-prefixes
/usr/share/nmap/nmap-mac-prefixes
luis@balanceador:~$ grep 0024A5 -i /usr/share/nmap/nmap-mac-prefixes
0024A5 Buffalo

किसी अन्य प्रोग्राम के साथ काम करना जो OUI जानकारी संग्रहीत करता है, जैसे airodump-ng-oui-update( oui.txtइस मामले में फ़ाइल करना), या कई अन्य:

  • /usr/share/btscanner/oui.txt
  • /usr/share/bluelog/oui.txt
  • /usr/share/ieee-data/oui.txt
  • /usr/share/golismero/thirdparty_libs/netaddr/eui/oui.txt
  • /usr/share/metasploit-framework/vendor/bundle/ruby/2.1.0/gems/packetfu-1.1.11/examples/oui.txt
  • /etc/unicornscan/oui.txt
  • /var/lib/ieee-data/oui.txt

1

आप इस API में CURL जैसी किसी चीज का उपयोग करके वास्तविक विक्रेता को पुनः प्राप्त कर सकते हैं:

curl -XGET "https://api.macaddress.io/v1?apiKey=at_2d31hlNQAO1PXZVTecL6yoVAxI8IW&output=vendor&search=bc:f1:f2:12:b4:93"

या

wget -qO- "https://api.macaddress.io/v1?apiKey=at_2d31hlNQAO1PXZVTecL6yoVAxI8IW&output=vendor&search=bc:f1:f2:12:b4:93"

सूचीबद्ध किए गए अज्ञात मैक पतों के लिए, इसने निम्न परिणाम लौटाए:

bc:f1:f2:12:b4:93 -> Cisco Systems, Inc
f0:db:e2:de:11:80 -> Apple, Inc
d8:61:94:e5:0b:1d -> Objetivos y Sevicios de Valor Añadido
84:11:9e:2b:1c:d6 -> Samsung Electronics Co, Ltd
ec:1f:72:5d:42:d0 -> Samsung Electro-Mechanics(Thailand)
44:d9:e7:0a:0b:98 -> Ubiquiti Networks Inc

सेवा का उपयोग करने के लिए, आपको एक एपीकेआई प्राप्त करने की आवश्यकता है जो कि एक दिन में 1000 अनुरोधों के तहत मुफ्त है।


एक व्यावहारिक विधि, वास्तव में। यह एक ऐसी साइट प्रतीत होती है जो मैक पहचान सेवाएं प्रदान करती है ( macaddress.io/pricing पर अधिक संख्या में अनुरोधों के लिए मूल्य निर्धारण देखें ), और, आज (अक्टूबर 2018) के लिए, इस उत्तर में वर्णित एपीआई जैसे अनुरोध नि: शुल्क प्रतीत होते हैं । धन्यवाद, दिमित्री एस।
सल्पाजो डी एरियेरेज़

0

मैंने oui और iab-files को अपडेट करने के लिए एक स्क्रिप्ट लिखी है। मुख्य समस्या यह है, कि नॅम्प-फाइलों का रूप बर्ट्कन या आर्चवॉच इत्यादि के लिए समान नहीं है, वे अक्सर अलग-अलग रूप में होते हैं (डबल-पॉइंट के साथ मैक-एड्रेस, हाइफ़न के साथ, बिना सीमांकक, ऊपरी मामलों, निचले हिस्से आदि। ।

आप इस स्क्रिप्ट को आज़मा सकते हैं, यह https://github.com/burningfog/refresh_oui पर संग्रहीत है ।

कृपया रीडमी-फ़ाइल पढ़ें और यदि कोई प्रश्न हैं तो कृपया मुझे प्रति मेल एक संकेत दें। यदि गिथब में नाम के अलावा अन्य उपकरण हैं, तो कृपया मुझे इस फ़ाइल से ओउई-फ़ाइल और कुछ लाइनों के लिए रास्ता दें ताकि मैं उस फॉर्म पर एक नज़र डाल सकूं।

अभिवादन जल रहा कोहरा



-2
#!/bin/bash

arp -an | egrep -v incomplete | while read line ; do mac=$( echo $line | awk -F' ' '{print $4}' | sed 's/:/-/g' | tr "[:lower:]" "[:upper:]" | cut -c 1-8 ) ; vendor=$( egrep "$mac" /usr/share/hwdata/oui.txt ) ; echo "$line : $vendor" ; done

आउटपुट:

? (192.168.88.36) at 60:03:08:a8:4e:86 [ether]  on eth0 : 60-03-08   (hex)              Apple, Inc.
? (192.168.88.38) at d8:8f:76:6f:59:0a [ether]  on eth0 : D8-8F-76   (hex)              Apple, Inc.
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.