Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ip и Mac-адрес [D6, Win95/98]


Страницы:   1 2

dim- ©   (2003-02-18 18:09:00) 

Можно ли зная имя пользователя получить на какой машине он сидит (ее ip,Mac-адрес и др) и как это сделать, если не трудно примерчик или носом ткнуть куда надо


Wonder   (2003-02-26 11:33:00) [21]

>Alex Konshin
"Если ты такой умный, то скажи тогда пожалуйста, что такое default gateway в случае IPX сети? И как же тогда роутеры работают в таких сетях?"
Не знаю, врать не буду. Точнее, предположить могу, но достоверно не скажу. Не работаю я с маршрутизацией IPX...

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

"ARP именно и предназначен для того, чтобы определить куда слать пакеты, все остальное - побочные эффекты."
Все остальное - это что? ARP, вообще-то, предназначен для разрешения (конвертации) адреса сетевого уровня в MAC-адрес. Все. Больше он ни для чего не предназначен. Определением "куда слать" занимаются протоколы более высокого уровня :)

"Ты что, в default gateway прописываешь MAC-address?"
Не доходи до абсурда.

"И откуда, в таком случае, системе знать куда слать пакет? Это же разные уровни маршрутизации."
Мы о чем говорим-то хоть? А? Какие "разные уровни"? Маршрутизация, по определению, происходит на СЕТЕВОМ уровне OSI.
Система определяет все очень просто, а именно:
1. если получатель находится в той же сети, что и отправитель -> слать напрямую, используя ARP для разрешения destination IP->destination MAC
2. если получатель из другой сети -> слать на маршрутизатор (default gateway), используя ARP для выяснения MAC-адреса этого маршрутизатора


Alex Konshin   (2003-02-26 04:48:00) [22]

Здесь на работе я не могу со своего компьютера определить MAC-address"а даже для компьютеров, которые стоят рядом. Правда, я не знаю физическую организацию нашей сети.


Alex Konshin   (2003-02-26 03:37:00) [23]

Если ты такой умный, то скажи тогда пожалуйста, что такое default gateway в случае IPX сети? И как же тогда роутеры работают в таких сетях?
Не путай IP-роутеры и мультипротокольные роутеры, какими обычно являются "железные" роутеры.
ARP именно и предназначен для того, чтобы определить куда слать пакеты, все остальное - побочные эффекты. Ты что, в default gateway прописываешь MAC-address? И откуда, в таком случае, системе знать куда слать пакет? Это же разные уровни маршрутизации.


Wonder   (2003-02-25 12:04:00) [24]

>Alex Konshin
"А систему это не должно волновать. Ей говорят, что пакеты для такого-то ip нужно слать на такой-то MAC-адрес. И это личное дело роутера/свича как с ними дальше поступать. И стандарт ARP при этом соблюдается."
Так я ж об этом и говорю! И программиста, равно как и систему, ЭТО волновать не должно :) Что такое API объяснять не надо? :)

"По ARP ты должен получить MAC-адрес интерфейса, куда слать пакеты для требуемого ip-адреса, и это совсем не обязательно будет интерфейс c этим ip-адресом. Именно так и работают роутеры. Вполне возможно, что и эти свичи так делают."
Нет. Роутеры ТАК не работают :) В общем случае, пакет посылается на адрес того маршрутизатора, который указан в настройках протокола как default gateway. И ARP здесь нужен ТОЛЬКО для определения адреса этого маршрутизатора. Или ты думаешь, что система сразу ищет MAC-адрес получателя, если он не из той же сети, а отвечает маршрутизатор?

"По крайней мере, я помню, что там можно управлять пропусканием нетбиосовских броадкастов, а это, согласись, уже как-то не совсем укладывается в понятие "один сегмент"."
Отчего же? Отсутствие широковещания не делит сеть на сегменты :)

"Короче, у тебя есть такой свич?"
Есть. Только не 3COM.

"У меня нет, я проверить не могу. Может быть реализрвано по-разному, и все будет соответствовать стандартам. Вот только как они на самом деле поступают - я не знаю."
А я знаю :)

"В конце концов, для случая роутера у тебя сомнения есть?"
Есть. См. выше :)


Alex Konshin   (2003-02-22 05:41:00) [25]

2 Wonder: А систему это не должно волновать. Ей говорят, что пакеты для такого-то ip нужно слать на такой-то MAC-адрес. И это личное дело роутера/свича как с ними дальше поступать. И стандарт ARP при этом соблюдается.
Например, тебя же не удивляет, что у одного интерфейса может быть несколько ip адресов? И тогда все они будут иметь один MAC-адрес. По ARP ты должен получить MAC-адрес интерфейса, куда слать пакеты для требуемого ip-адреса, и это совсем не обязательно будет интерфейс c этим ip-адресом. Именно так и работают роутеры. Вполне возможно, что и эти свичи так делают.
По крайней мере, я помню, что там можно управлять пропусканием нетбиосовских броадкастов, а это, согласись, уже как-то не совсем укладывается в понятие "один сегмент".
Короче, у тебя есть такой свич? У меня нет, я проверить не могу. Может быть реализрвано по-разному, и все будет соответствовать стандартам. Вот только как они на самом деле поступают - я не знаю.
В конце концов, для случая роутера у тебя сомнения есть?


dim-   (2003-02-21 15:11:00) [26]

Тогда такой вопрос: когда машина входит в сеть сервер как-то узнает ее Мас (в сетях я ноль, но у нас привязка идет и к мас адресу и к имени машины), скорей всего она (машина) сама отдает его, тогда почему зная имя ПК не спросить его Мак


Wonder   (2003-02-21 13:52:00) [27]

>Alex Konshin
В таком случае, было бы любопытно узнать, каким же образом сама система работает с сетью, если у кучи машин, как ты говоришь, с ее точки зрения один и тот же MAC-адрес?

Или ты думаешь, что система тоже настолько "интеллектуальна", что сама угадывает, что на самом-то деле стоит не "простой" свич, а "очень умный" свич, и с ним надо вести себя предельно осторожно, а то еще наврет о MAC-адресе :)

Нет уж. Никто пока стандарт на ARP не отменял. И тот же 3Com его соблюдает и поддерживает в той серии свичей (именно свичей, а не чего-либо другого), о которой ты говоришь.


Alex Konshin   (2003-02-21 06:45:00) [28]

Свичи бывают интелектуальные, которые имеют собственный MAC-address и ip-address и вовсе не обязаны пропускать все и во все стороны. Например, они могут не пропускать броадкасты, а в этом случае это уже разные сегменты. Например, они уже могут организовывать и поддерживать вируальные подсетки (не ip-подсетки, а вроде как сетевые сегменты). То есть, по сути это уже скорее тупые мультипротокольные рутеры, чем умные свичи. Не веришь - посмотри на 3com SuperStack Switch. Скажешь, что таких в России не найдешь? Года три назад в фирме в Питере где я тогда работал он уже был. Думаю, что в организации, в которой, как утверждает спрашивающий, стоят сотни компьютеров, тоже стоит что-то серьезное - как минимум интелектуальный свитч, а может уже и рутер есть.
Да, не все, и не всегда. Но уж лучше пусть у спрашивающих в памяти отложится, что это не всегда будет работать, чем потом будут недоумевать почему у кучи машин один и тот же MAC-address.

Честно говоря, я не могу сейчас это проверить - ну нет у меня дома свича, рутер есть, а свича - нету. Надо будет на работе попробовать...

Кстати, если не ошибаюсь, это можно легко посмотреть по arp -a
Насколько я понимаю, будут видны совпадающие MAC-адреса. Правда, еще и в свиче хорошо бы несколько VLAN определить и тогда посмотреть. В общем, у кого он есть и кому хочется по-экспериментировать - два шага вперед.


Wonder   (2003-02-20 17:04:00) [29]

>Alex Konshin
>Насчет MAC-address: если в организации столько компьютеров, то наверняка стоят свитчи, а при таком раскладе ты не сможешь узнать MAC-address у большинства машин, по крайней мере через ARP.
...
>Но опять-таки ты не сможешь достать MAC-address компьютера не из того же сегмента сети.

А с каких пор, свичиначали делить сеть на сегменты?


blast   (2003-02-20 15:23:00) [30]

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


Alex Konshin   (2003-02-20 08:26:00) [31]

Ну этот вопрос уж как минимум раз в три дня задают. Смотри iphlpAPI, например,
http://msdn.microsoft.com/library/en-us/iphlp/iphlp/getipnettable.asp
Но, наверно, лучше для надеждности использовать функцию SendARP оттуда же.
Но опять-таки ты не сможешь достать MAC-address компьютера не из того же сегмента сети.


Bsl   (2003-02-20 07:54:00) [32]

А как по IP-адресу узнать MAC, еслу он уже есть в ARP-кэше?


Alex Konshin   (2003-02-20 02:17:00) [33]

Насчет MAC-address: если в организации столько компьютеров, то наверняка стоят свитчи, а при таком раскладе ты не сможешь узнать MAC-address у большинства машин, по крайней мере через ARP. Может быть это можно как-то достать их через SNMP на этих свитчах, но не знаю - никогда не пробовал, врать не буду (настроение не то).


Alex Konshin   (2003-02-20 02:06:00) [34]

Login к конкретной машине никак не привязан. Ты вполне можешь войти с тем же логином с другой машины (в случае NT доменов, а в большой организации скорее всего так и есть). Login-то в домене вы заблокировать можете, но использовать Интернет можно и не заходя в домен.
То есть задача административная и скорее всего частично решается установкой Windows 2000 Advanced Server"а или выше, а на нем Active Directory. Он тогда будет работать как DNS server, который будет синхронизирован со списком зарегистрированых компьютеров. Это, правда, тоже не решит проблему, но хоть все будет в одном месте :). Теоретически можно получить на сервере список текущих сессий, возможно, что там же есть информация о логине - я не знаю, но копать нужно здесь, больше негде.
Но это никак не решит вопрос с несанкционированным доступом в Интернет. Тут уж надо какой-то файервол делать или управлять им удаленно. Помниться, в свое время, я для клуба М19 делал маленькую примочку на Delphi, которая просто телнетом шла на киску и включала-выключала роутинг. Думаю идея ясна.


dim-   (2003-02-20 00:50:00) [35]

Организация у нас больщая ~600 чел. текучка тоже не маленькая, человек уволился, а нам не сообщили и под его именем другой ходит (интернет, рессурсы, БД и т.д.) выясниться это можент через пол года или когда по шапке получим от начальства.
Еще есть База кадровая, она более-менее актуальна, вот и хочу в бд прописать имена пользователей, а когда их увольняют чтобы автоматом и опользователя в сети блокировало.
Также зная имя пользователя хотелось бы получать имя машины и Мас-адрес, или хотябы по Мас по имени машины.
Во завернул:)


Alex Konshin   (2003-02-20 00:03:00) [36]

Начнем с того, что нижний протокол может быть и не TCP.
Ты скажи, чего хочешь, может, не с той стороны роешь? Ситуацию опиши.


dim-   (2003-02-19 23:28:00) [37]

как бы всетаки отловить таких людишек:) очень надо
может у кого ссылки есть на статьи? или кто занимался.
А как узнать Мас-Адрес по имени машины?


Anatoly Podgoretsky   (2003-02-19 20:51:00) [38]

А и контроллера может не быть и многое другое


Alex Konshin   (2003-02-19 20:20:00) [39]

А если он сидит на нескольких машинах?
Домейн контролер знает, но скажет ли? По крайней мере копать нужно в том направлении.


dim-   (2003-02-19 11:44:00) [40]

кто нибудь знает?


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо