Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Хочу все знать (http://forum.oszone.net/forumdisplay.php?f=23)
-   -   Аппаратный ping (http://forum.oszone.net/showthread.php?t=74585)

InnoSanctum 14-11-2006 16:20 511578

Аппаратный ping
 
Скажите, кто знает: можно ли "пропинговать" устройство по аппаратному адресу?
Суть вот в чем: получил тему диплома. Тема такая: "Разработать систему для проверки работоспособности каналов связи". Подошел за расшифровкой к руководителю, он мне вешает примерно следующее: "задача - написать программу, которая может сообщить информацию о том, где обрыв кабеля (или же какой беспроводной адаптер не работает). Она (программа) должна уметь опрашивать такие устройства, как роутеры, свитчи и хабы. Если устройство не отвечает, то должна об этом сообщать".. Типа такого. Вот я и думаю: ну, роутер - ладно. Но свитч и хаб - не имеют ай-пи адреса. Значит, нужно "пинговать" МАК?.. Реально ли это?

Coutty 14-11-2006 17:03 511589

InnoSanctum, зачем пинговать хаб и свитч? Нужно спинговать узел, с которым есть соединение только через этот конкретный хаб/свитч.

InnoSanctum 14-11-2006 17:25 511603

Хм.. А если к узлу лежат n (n>=2) линков? И мне нужно проверить все?
Ведь мне недостаточно узнать, есть ли связь с конкретным хостом - это и простой пинг умеет. Мне нужно узнать все маршруты к этому хосту. Насколько я понимаю, сформировать отчет :
Путь 1 к abc.abc.com (ip abc.abc.abc.abc):

1: IP xxx.xxx.xxx.xxx MAC xx:xx:xx:xx:xx Host Name xxxxxxx.xxxxxx.xx
2: IP yyy.yyy.yyy.yyy MAc yy:yy:yy:yy:yy Host Name yyyyyyy.yyyyyy.yy
.
.
.

Путь 2 :
1: IP nnn.nnn.nnn.nnn MAC nn:nn:nn:nn Host Name nnnnnn.nnnnnn.nn
2: вероятный обрыв

типа такого...

Если нет ай-пи и имени, значит, указать только МАК...

То есть, софтина должна работать на всех уровнях ОСИ от физического (МАК-адреса) до сеансового, пожалуй...

Но вопрос не в том. Вопрос - реально ли в принципе получить отклик от хаба, обратившись к нему по МАКу? И как вообще узнать МАК хаба?

kim-aa 14-11-2006 17:46 511608

Цитата:

Вопрос - реально ли в принципе получить отклик от хаба
Нет, не реально. Повторитель/Reapiter в чистом виде это просто многоканальный усилитель.
У 2х скоростных повторителей 10/100 есть встроенный бридж, соответственно они должны обладать служебным MAC.

Нечто подобное тому что вы ищите представляет собой 3COM-network-supervisor.

Необходимая Вам литература по работе мостов (свичей) http://www.kuen.ru/posts/cisco/Print...ii_v_Cisco.rar

Заранее соболезную, книга толстая и фундаментальная.
Вас интересуют главы 5, 6

InnoSanctum 14-11-2006 17:54 511614

Цитата:

Нет, не реально. Повторитель/Reapiter в чистом виде это просто многоканальный усилитель.
:) Спасибо. Мне тоже так казалось. Постараюсь объяснить это своему руководителю:)

И за книгу - отельное спасибо.

BuGfiX 14-11-2006 17:55 511615

Цитата:

Вопрос - реально ли в принципе получить отклик от хаба, обратившись к нему по МАКу? И как вообще узнать МАК хаба?
Вот есть в линуксе такая утилитка, называется arping.
В виндовс про нее не слышал, но возможно есть что-то аналогичное...
А по поводу маршрута - так есть же traceroute (tracert).

InnoSanctum 14-11-2006 18:10 511621

Цитата:

Вот есть в линуксе такая утилитка, называется arping.
В виндовс про нее не слышал, но возможно есть что-то аналогичное..
мне ее предстоит написать:) Совместив с traceroute. Тraceroute не выдает МАК-адреса. И в маршрут вписывает только маршрутизаторы. А моя по идее должна еще и свитчи (хабы!??) учитывать. Вот я и думаю - как:)

Tigr 14-11-2006 22:53 511759

Цитата:

А моя по идее должна еще и свитчи (хабы!??) учитывать
Уточни формулировку у того мужика: любые свичи ?

InnoSanctum 15-11-2006 15:26 512068

Цитата:

Уточни формулировку у того мужика: любые свичи ?
Она должна "говорить", где обрыв. До _любого_ устройства или же после него. То есть, выводить отчет: устрйство такое-то присутствует, устройство такое-то уже не присутствует. Чтобы человек мог найти кабель между этими устройствами и заменить/прозвонить и т.п. Похоже на сказку... :) Ведь неясно, откуда мой комп может узнать, какие устройства на маршруте. По идее, можно находить последнее доступное.. Этого, вероятно, хватит. Но - любое. Проблема тут вот в чем: препод сам в этом плавает. Он сам не знает, что конкретно требуется. И поэтому требует все и сразу. Вот я и хочу узнать, что в принципе возможно, а что - нет. Могу ли я найти доступный напрямую хаб/свитч? Тот, в который непосредствнно воткнута моя сетевая карта?

Да, и еще: программа должна использовать bit-error-rate. Не совсем понятно, откуда возьмутся биты ошибки, если канала нет в принципе.. Но тем не менее. Препод объяснять что-либо отказывается, потому что (видимо) не знает, что сказать.

InnoSanctum 15-11-2006 16:13 512093

http://zhurnal.ape.relarn.ru/articles/2006/027.pdf

нашел вот.. Наверно, это то, что мне нужно. Но я тут ничего не понимаю. Кроме того, что, зная длину отправляемых пакетов и зная, сколько из них потеряно, можно каким-то хитрым математическим образом с некоторой вероятностью установить причину потери..

kim-aa 15-11-2006 16:17 512096

Есть такая программулина Dude - она может кое-что о чем Вы писали. И самое главное она Free. может Вам попробовать списаться с разработчиком. Он, по моему, из прибалтики.

Tigr 16-11-2006 23:07 512958

Цитата:

препод сам в этом плавает. Он сам не знает, что конкретно требуется
Поговори с ним без свидетелей и докажи, что он требует невозможного. Если заложить в прогу топологию сети, то по наличию/отсутствию пинга обрыв найти можно. Если такой информации нет, то задача, IMHO, невыполнима.

Greyman 20-11-2006 21:05 514740

InnoSanctum
Цитата:

Спасибо. Мне тоже так казалось. Постараюсь объяснить это своему руководителю
Это не связано с поставленной им задачей:
Цитата:

задача - написать программу, которая может сообщить информацию о том, где обрыв кабеля (или же какой беспроводной адаптер не работает). Она (программа) должна уметь опрашивать такие устройства, как роутеры, свитчи и хабы. Если устройство не отвечает, то должна об этом сообщать
Ты сам себя изначально запутал сразу решив прользоватся транспортным уровнм модели OSI, т.е. протоколом IP... Но это уже 3-ий уровень..., что подразумевает, что под ним есть еще 2... Чтобы решить поставленную задачу тебе надо будет разбитатся в премудростях программирования управлением приемом/передачей/контролем непосредственно кадров протокола Ethernet (например)...

Tigr
Цитата:

Поговори с ним без свидетелей и докажи, что он требует невозможного. Если заложить в прогу топологию сети, то по наличию/отсутствию пинга обрыв найти можно. Если такой информации нет, то задача, IMHO, невыполнима.
Если препод действительно разбирается в сетевой модели, то в дураках окажется именно InnoSanctum. Вопрос в том, давали ли им необходимые знания..., но ведь всегда остается факультатив... Ну а аналогичных коммерческих продуктов в сети не так уж и мало (точно больше одного...;))...

InnoSanctum 22-11-2006 15:41 515527

:) знаете, бывают такие люди, которые признают только 2 мнения: свое собственное и неправильное. Вот мой препод именно из таких. Даже если совершенно очевидно, что он неправ, продолжает гнуть свое. Мне понравилось очень, когда он объяснял алгоритм шифрования ГОСТ и начал говорить, что исходный текст разбивается на фрагменты по 256 бит, а потом случайным образом выбирается фрагмент для шифрования с индексом i mod 8, где i возрастает до длины ключа, потому что 256 - это степень двойки, как и 8, и таким образом, все фрагменты обрабатываются в случайном, неизвестном предполагаемому хакеру, порядке. Когда же я ему заметил, что i mod 8 всегда меньше 8, и поэтому с таким подходом можно зашифровать не более 8 фрагментов, то есть, максимальный размер шифруемого сообщения - 256*8, он благоразумно отослал меня к литературе и авторам алгоритма. Туда же он отослал всех, у кого возникли вопросы "А почему все-таки именно 256?"..

Greyman я не решал пользоваться транспортным уровнем. Я как раз и пытаюсь узнать, как бы мне воспользоваться физическим или канальным.. Потому что исходник, скажем, пинга на С++ я может и найду, быть может, даже и разберусь в нем и смогу создать аналог. А вот аппаратный пинг (то есть, сперва узнать (КАК??) мак-адрес устройства, не имеющего ай-пи вообще, а потом выяснить, нормально ли оно функционирует). Был бы очень благодарен, если бы ты указал здесь хоть один. Dude (я его не копал глубоко, могу ошибаться) не выдает подобной инфы, он просто определяет (или угадывает?) топологию данного сегмента. Согласен, это немало, но он вряд ли пойдет дальше.

Greyman 23-11-2006 12:38 515901

InnoSanctum
Исходник... Хм-м-м... Т. е. нужно уже все готовенькое... Я уже давно забросил программирование, особенно системное, поэтому не слежу за соответствующими примерами реализаций решения тех или иных программерских задачь... Но сами-то спецификации протоколов являются открытыми. Найти соответсвующие библиотеки реализующие нужные функции тоже ИМХО не проблема... Т. ч. в практическом плане помочь не могу, но уверен что при желании нужную инфу всегда можно найти... Если нужен совет, то попробуй обратится с линух-программистам, они чаще сталкиваются с необходимостью решения ситсемных задач с помощью программирования... Ну и конечно очень желательно знание инглиша, большая часть инфы доступна именно на нем.

InnoSanctum 23-11-2006 15:10 515978

Ок, спасибо..
Буду копать интернет. :)


Время: 01:44.

Время: 01:44.
© OSzone.net 2001-