Главная » Мережеві технології » Як визначити mac адресу по ip. Удалённий MAC-адресу по IP і навпаки

Як визначити mac адресу по ip. Удалённий MAC-адресу по IP і навпаки

Як визначити mac адресу по ip. Удалённий MAC-адресу по IP і навпаки

Найчастіше, потрібно визначити саме Mac-адреса по ip, але в житті також трапляються ситуації, коли потрібно дізнатися IP-адресу по маку. Наприклад, у мережевого принтера не друкується сторінка налаштувань. Хіба ви не пінгуєтся свіжокуплений роутер: мак-адреса є в документації, але айпішник не підходить. Не дивлячись на те, що дізнатися мак-адреса, знаючи IP, начебто не складно, давайте все-таки розберемо обидва випадки.

Отже. Знаючи IP, нам потрібно визначити мак.

Умови завдання: Нехай наш комп'ютер має ip 192.168.1.2. ми будемо визначати мак-адреса комп'ютера з IP-адресою 192.168.1.3. і таблицю arp-кеша ми обнулили.

Таблиця arp-кеша в командному рядку виводиться виводиться командою:

Arp - a

Дивимося, що у нас є:

Як визначити mac адресу по ip. Удалённий MAC-адресу по IP і навпаки

192.168.1.1 - Це видно наш роутер.

Якщо Ви знаходитесь в тій же підмережі, що і наш комп'ютер, то після першого контакту нашого мережевого пристрою з пристроєм віддаленого вузла, ми будемо знати його мак-адреса. Ініціювати перший контакт можна, наприклад, пропінгувати айпішник. Після пинга, виводимо знову таблицю arp-кеша:

Як визначити mac адресу по ip. Удалённий MAC-адресу по IP і навпаки

Ось і потрібний нам мак-адреса. Цей спосіб здебільшого підходить для визначення IP-адрес мережевого обладнання.

Якщо потрібний нам ви перебуваєте поза нашої підмережі, то цей спосіб не підійде. І взагалі, є більш простий спосіб, який дозволяє дізнатися мак-адреса - це програма GETMAC. Вона може видавати як локальний мак-адреса, так і мак віддаленого комп'ютера. Дивимося поточний мак-адерс:

Як визначити mac адресу по ip. Удалённий MAC-адресу по IP і навпаки

Мак віддаленого компа:

Як визначити mac адресу по ip. Удалённий MAC-адресу по IP і навпаки

Як видно, результат збігся з тим, що ми бачили в таблиці arp-кеша.

Заодно, наведу ще один спосіб. За допомогою програми psexec можна виконувати команди командою рядка в контексті іншого комп'ютера, тобто той же getmac або ipconfig / all:

Як визначити mac адресу по ip. Удалённий MAC-адресу по IP і навпаки ;

Alt = "" />

Мінуси останніх двох способів - це те, що необхідно знати облікові дані віддаленого комп'ютера, що дозволяють переглядати відповідну інформацію, а так само неможливість взаімодествія з мережевим обладнанням. В даному випадку ні psexec, ні getmac не запитав нічого подібного саме тому, що на вилученому комп'ютері була точно така ж учеткі з таким же паролем.

Ще один спосіб узать мак-адреса - за допомогою команди nbtstat. Цей дозволить дізнатися мак адресу інтерфейсу в будь-який підмережі, але так само не спрацює з маршрутизаторами.

Як визначити mac адресу по ip. Удалённий MAC-адресу по IP і навпаки

У ubuntu 10.10 у мене є програма arp-scan (яка не входить в базовий комплект операційної системи), за допомогою якої можна виконати подібну операцію.

Sudo arp-scan --interface = eth0 192.168.1.0

Як визначити mac адресу по ip. Удалённий MAC-адресу по IP і навпаки

Добре, ми визначилися з тим, як витягти мак з IP-адреси. Як же бути навпаки? У Windows я не знайшов способу це зробити штатними засобами. У ubuntu я це зробив за допомогою тієї ж програми arp-scan, змусивши пройтися прогу за діапазоном айпішніков на предмет відповідності мак-адреси вказаною:

Sudo arp-scan --interface = eth0 192.168.1.0/24 | grep 00: 23: 54: 3d: f2: ab

Як визначити mac адресу по ip. Удалённий MAC-адресу по IP і навпаки

Це наштовхнуло мене на думку, що треба і в windows зробити щось подібне, т. Е. Тупо перебирати айпішники і ні перетворювати їх в маки, шукаючи відповідності.

Наприклад, powershell:

Function findmac ($ mac) <

$ X = 1,2,3,4 # підмережі

$ Y = 1..254 # комп'ютери

Foreach ($ lan in $ x) <# перебираємо підмережі

$ Y | foreach <# перебираємо комп'ютери

$ Comp = "192.168. $ Lan. $ _"

$ Ping = Get-WmiObject - Query "select * from win32_pingstatus where (address = '$ comp')"

Echo $ comp # показує над яким компом зараз думає скрипт

If ((nbtstat - A $ comp) - match $ mac) <# умова - якщо рядок з маком з nbtstat збіглася з шуканим маком,

Break # завершуємо виконання

категорія: веб-програмування

Схожі статті: