реклама на сайте
подробности

 
 
> Динамический IP на устройстве, Как найти свою железку?
-= Александр =-
сообщение Apr 12 2017, 12:00
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 123
Регистрация: 15-10-07
Из: Санкт-Петербург
Пользователь №: 31 370



Добрый день!
В общем делаю я некое устройство с управлением через Ethernet. Подумалось мне, что будет гораздо удобнее сделать ему присвоение адреса по DHCP, чем зашивать его в явном виде и где-то на наклейке писать. Юзеры глупые, бумажку потеряют, программное с другой машины с другими настройками перетащут и будет мне головная боль. Другое дело когда все автоматическое rolleyes.gif

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


--------------------
Ниндзя - круче всех. Они умеют ходить по воде, делить на ноль и угадывать шаффл в АйПоде.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
-= Александр =-
сообщение Apr 12 2017, 12:57
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 123
Регистрация: 15-10-07
Из: Санкт-Петербург
Пользователь №: 31 370



Пасибо за ответы, пойду учить матчасть. Пока-что считается что DHCP есть и все в одном сегменте. Остальное может будет, но позже.


--------------------
Ниндзя - круче всех. Они умеют ходить по воде, делить на ноль и угадывать шаффл в АйПоде.
Go to the top of the page
 
+Quote Post
jcxz
сообщение Apr 12 2017, 14:42
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(-= Александр =- @ Apr 12 2017, 14:57) *
Пасибо за ответы, пойду учить матчасть. Пока-что считается что DHCP есть и все в одном сегменте. Остальное может будет, но позже.

Почему-то никто не вспомнил про DynDNS - поможет в случае разных подсетей, да и вообще совсем разных сетей.
А если Вам нужно узнать IP-адрес, а MAC известен, то поможет RARP (это протокол обратный ARP).
А если известно NETBIOS-имя устройства/компа, то поможет преобразовать его в IP протокол WINS.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Apr 12 2017, 15:50
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(jcxz @ Apr 12 2017, 17:42) *
Почему-то никто не вспомнил про DynDNS - поможет в случае разных подсетей, да и вообще совсем разных сетей.

Никакого отношения к собственно задаче найти свою железку не имеет.
Цитата
А если Вам нужно узнать IP-адрес, а MAC известен, то поможет RARP (это протокол обратный ARP).

Ага, и заставить пользователя вбивать и запоминать еще больше цифр. Плюс надо поднять этот протокол.
Цитата
А если известно NETBIOS-имя устройства/компа, то поможет преобразовать его в IP протокол WINS.

Осталось его поднять на железке, да и на компьютере тоже разрешить, ибо уже в 90x netbios вышел из употребения де факто.

Все ведь просто - посылается broadcast UDP запрос на порт предназначенный для целей идентификации у железки. Железка видит, что запрос именно ее, а не вообще что-то чужое и радостно узнает из него IP адрес компьютера и сообщает на него о своем существовании.
Всего делов на полчаса.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
jcxz
сообщение Apr 12 2017, 21:47
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(zltigo @ Apr 12 2017, 17:50) *
Никакого отношения к собственно задаче найти свою железку не имеет.

Железке присваиваем уникальное символьное имя. При включении железка по DHCP получает IP и регистрирует его на DynDNS для вышеозначенного символьного имени. Далее - любой клиент может разресольвить это символьное имя в её IP.
Что не так?

Цитата(zltigo @ Apr 12 2017, 17:50) *
Ага, и заставить пользователя вбивать и запоминать еще больше цифр. Плюс надо поднять этот протокол

Вы о чём?? Что вбивать и что запоминать?
У железки однозначно есть какой-то MAC. И естественно пользователь на компе должен его знать. Но в этом же нет проблем?
Он же не меняется. А меняется IP, который и нужно узнать.
Вот RARP - он как раз для этого.
А поднимать всё равно что-то придётся. Но лучше поднимать стандартный протокол, а не самопал, чтобы не получить потом люлей от админа. rolleyes.gif

Цитата(zltigo @ Apr 12 2017, 17:50) *
Осталось его поднять на железке, да и на компьютере тоже разрешить, ибо уже в 90x netbios вышел из употребения де факто.

Да ладно! И сетевыми папками Вы с 90-х не пользовались и сетевым принтером тоже и т.п.? Я Вам сочувствую biggrin.gif

Цитата(zltigo @ Apr 12 2017, 17:50) *
Все ведь просто - посылается broadcast UDP запрос на порт предназначенный для целей идентификации у железки. Железка видит, что запрос именно ее, а не вообще что-то чужое и радостно узнает из него IP адрес компьютера и сообщает на него о своем существовании.

Это "просто" до первого конфликта по портам с другой такой-же железкой, сляпанной таким же умельцем biggrin.gif
А чтобы этого избежать, надо будет дать возможность пользователю изменить этот порт - и опять же придётся ему "вбивать и запоминать еще больше цифр" laughing.gif
Да и как быть за пределами подсети?

Имхо - следует максимально возможно использовать стандартные протоколы, а не лепить самопал.
И даже в этом случае - прежде чем его лепить, нужно изучить все возможности стандартных протоколов и если их почему-то не хватает - только в этом случае ваять своё.
Лепить свой велосипед в обход всех стандартов и не зная их - это пионэрский подход, странно слышать от Вас призывы к этому.
Ну если конечно эта железка делается только для себя и не пойдёт ни к кому. Но тогда не проблема и просто в своём роутере прописать фиксированную аренду постоянного IP для этой железки и не маяться. Может ТСу так и сделать? Он в курсе такой возможности? rolleyes.gif
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- -= Александр =-   Динамический IP на устройстве   Apr 12 2017, 12:00
- - Kuzmi4   2 -= Александр =- просто запускаете стандартный is...   Apr 12 2017, 12:19
|- - _3m   Цитата(Kuzmi4 @ Apr 12 2017, 15:19) 2 -= ...   Apr 12 2017, 12:26
- - zltigo   Цитата(-= Александр =- @ Apr 12 201...   Apr 12 2017, 12:24
- - -= Александр =-   Да, действительно, я и забыл что так можно) Broadc...   Apr 12 2017, 12:29
|- - zltigo   Цитата(-= Александр =- @ Apr 12 201...   Apr 12 2017, 12:31
- - krux   гуглите в направлении "групповой MAC-адрес...   Apr 12 2017, 12:55
||- - zltigo   Цитата(jcxz @ Apr 13 2017, 00:47) Вы о чё...   Apr 13 2017, 07:48
||- - jcxz   Цитата(zltigo @ Apr 13 2017, 09:48) Ознак...   Apr 13 2017, 08:03
||- - zltigo   Цитата(jcxz @ Apr 13 2017, 11:03) У автор...   Apr 13 2017, 08:39
||- - _3m   Цитата(jcxz @ Apr 13 2017, 11:03) Да ладн...   Apr 13 2017, 08:40
||- - jcxz   Цитата(_3m @ Apr 13 2017, 10:40) Аксиома2...   Apr 13 2017, 12:44
||- - _3m   Цитата(jcxz @ Apr 13 2017, 15:44) Эта нев...   Apr 13 2017, 14:06
|||- - Corvus   Присоединяюсь к варианту zltigo. Широковещательный...   Apr 13 2017, 14:37
||- - zltigo   Цитата(jcxz @ Apr 13 2017, 15:44) Ибо куд...   Apr 13 2017, 17:09
||- - jcxz   Цитата(zltigo @ Apr 13 2017, 19:09) Если ...   Apr 13 2017, 20:41
||- - zltigo   Цитата(jcxz @ Apr 13 2017, 23:41) Именно ...   Apr 13 2017, 21:35
||- - gosha-z   Цитата(jcxz @ Apr 13 2017, 23:41) Другая ...   Apr 14 2017, 18:33
|- - KRS   Цитата(jcxz @ Apr 12 2017, 17:42) А если ...   Apr 14 2017, 04:15
- - Lagman   Можно попробовать сделать так, пропинговать диапаз...   Apr 12 2017, 13:06
|- - -= Александр =-   Цитата(Lagman @ Apr 12 2017, 16:06) пропи...   Apr 12 2017, 13:17
- - Lagman   У вас сеть выше класса 1С?   Apr 12 2017, 13:53
|- - -= Александр =-   Цитата(Lagman @ Apr 12 2017, 16:53) У вас...   Apr 12 2017, 14:06
- - gosha-z   Выбирайте: Link-Local Multicast Name Resolution Mu...   Apr 13 2017, 17:05
- - gosha-z   zltigo, а дайте, пожалуйста, ваше определение поня...   Apr 13 2017, 17:45
|- - zltigo   Цитата(gosha-z @ Apr 13 2017, 20:45)...   Apr 13 2017, 17:56
|- - gosha-z   Цитата(zltigo @ Apr 13 2017, 20:56) Локал...   Apr 13 2017, 18:09
|- - zltigo   Цитата(gosha-z @ Apr 13 2017, 21:09)...   Apr 13 2017, 18:15
- - krux   2 jcxz а подскажите, какой из сервисов DynDNS,про...   Apr 13 2017, 18:07
- - Kabdim   А чего никто не вспоминает про UPnP?   Apr 14 2017, 07:42


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 18:37
Рейтинг@Mail.ru


Страница сгенерированна за 0.01458 секунд с 7
ELECTRONIX ©2004-2016