Определение параметров локалки в которую включен девайс

Подключаем наши девайсы к компьютеру. Обсуждаются: порты, протоколы, драйвера, языки программирования и т.д.
Ответить
Встал на лапы
Сообщения: 116
Зарегистрирован: Ср апр 28, 2010 17:49:14

Сообщение zenek »

Здравствуйте!, имеется локальная сеть без DHCP сервера, есть девайс, который должен работать в этой ( и не только этой сети ), с DHCP все понятно, а вот как девайсу выбрать себе IP из диапазона адресов конкретной локальной сети понять не могу. Может кто подскажет?
Спасибо.
Реклама
Модератор
Аватара пользователя
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Сообщение ploop »

Может, для начала скажете, что за секретный такой девайс?
Реклама
Встал на лапы
Сообщения: 116
Зарегистрирован: Ср апр 28, 2010 17:49:14

Сообщение zenek »

девайс прост: стоит МК stm32f107 + PHY микросхема DP83848, на контроллере поднят стек lwIP, так вот с DHCP все работает все понятно, и если жестко задать адрес, маску и шлюз сети тоже работает, но это если я знаю все эти параметры сети. А вот если подключусь в сеть о которой мне не известно ничего, как в ней определить какой диапазон адресов используется?
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1518
Зарегистрирован: Пт дек 28, 2012 21:56:46
Откуда: St. Petersburg

Сообщение blackx »

Видимо, однозначно определить не получится. Если ПК подключается к такой сети, то нужно знать IP шлюза и маску этой подсети как минимум. Для определения свободного IP можно "пинговать" все по порядку.

А если у вас нет никакой информации даже о адресе шлюза - то ничего не сделать.
Изображение only pure true norwegian blackx Изображение
Реклама
Эиком - электронные компоненты и радиодетали
Модератор
Аватара пользователя
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Сообщение ploop »

zenek, единственный вариант - сделать интерфейс, где вручную можно указать параметры сети.
Если вы включаетесь в неизвестную сеть, то никак. Ну или разворачивать полноценную систему, со сканерами диапазонов и прочими хакерскими штуками.
Реклама
Встал на лапы
Сообщения: 116
Зарегистрирован: Ср апр 28, 2010 17:49:14

Сообщение zenek »

Похоже придется ручками забивать себе параметры сети при подключении к сети без DHCP сервера... А так хотелось автоматизировать все это дело.
Реклама
Модератор
Аватара пользователя
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Сообщение ploop »

Вот для автоматизации как раз и придумали DHCP :)
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Сообщение ibiza11 »

Можно попробовать ловить все пакеты сети и анализировать их. По накопленным данным делать выводы.
Ставим плюсы: )
Модератор
Аватара пользователя
Сообщения: 13490
Зарегистрирован: Ср ноя 26, 2008 16:34:25
Откуда: Тамбовская обл.

Сообщение ploop »

Я и говорю, разворачивать полноценную систему со всякими хакерскими штуками. :)
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Сообщение ibiza11 »

ну мне казалось это не таким уж сложным) тем более с уже работающим стеком.
Ставим плюсы: )
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница

Сообщение urry »

да что там хакерского...
Поднять серверный сокет, прибиндить ему 0 айпишник и ввести в состояние листен.
Первый же пришедший пакет ему покажет, откуда пришло - айпишник , но порт должен быть известен заранее.
Контактная информация:
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1518
Зарегистрирован: Пт дек 28, 2012 21:56:46
Откуда: St. Petersburg

Сообщение blackx »

А адрес шлюза то из этого как получить?
Изображение only pure true norwegian blackx Изображение
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница

Сообщение urry »

адрес шлюза - это 1 в конце, широковещалка 255, особенно не порезвишься ...
Контактная информация:
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1518
Зарегистрирован: Пт дек 28, 2012 21:56:46
Откуда: St. Petersburg

Сообщение blackx »

Ну это как правило так. Хочется то общий алгоритм поиска, подходящий для любых сетей.
Изображение only pure true norwegian blackx Изображение
Мучитель микросхем
Сообщения: 447
Зарегистрирован: Ср сен 26, 2012 14:12:47
Откуда: Київ

Сообщение Cheba »

urry писал(а):адрес шлюза - это 1 в конце, широковещалка 255, особенно не порезвишься ...
Ой, ни первое, ни второе аксиомой не является. :facepalm:
Адрес шлюза в сети без DHCP анализом пакетов получить нельзя вообще.
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 1900
Зарегистрирован: Сб фев 21, 2009 13:11:40
Откуда: Москва

Сообщение ibiza11 »

Ставим плюсы: )
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница

Сообщение urry »

стоп, стоп, стоп...
Поправьте меня, где я неправ.
Пусть у нас 30 устройств со стеком lwip - без дополнительных капиталовложений стек поддерживает не более 5 сокетов.
Серверное устройство требует 30+1 сокетов, не влезаем - следовательно, у нас 30 клиентских сокетов и 1 серверный - и он не наш, аппаратно его поддержать не сможем физически.
Или как?
Контактная информация:
Мучитель микросхем
Сообщения: 447
Зарегистрирован: Ср сен 26, 2012 14:12:47
Откуда: Київ

Сообщение Cheba »

И причём тут сокеты?
У нас есть
TCP адрес A.B.C.D и номер порта Z, однозначно определяющий сокет.
Пусть МК устройство с примитивным стеком не умеет более 5 сокетов ( т.е. не может поддерживать более 5 одновременно открытых соединений), но
1) таких устройств в сети может быть миллиарды и они все могут работать одновременно
2) кроме МК в сети могут быть вполне "разумные" устройства, которые могут поддерживать десятки тысяч одновременно открытых сокетов, и могут быть маршрутизаторы (шлюзы), которые вообще ничего не знают про то, что за информация через них проходит. Сеть может быть нарезана "по понятиям", в смысле соответственно устаревшим правилам (первая цифра от 1 до 126 - значит это сеть класса А, 16 миллионов хостов), но чаще нарезается исходя из здравого смысла ( мне провайдер выделил 6 адресов из сети 94.ХХХ.ХХХ.128, с 129 по 134, а вовсе не сеть класса А )
Но и наоборот, 10-е сети никто, как правило локально не нарезает(а что, не жалко) , в результате узнать такие тонкости без DHCP, просто анализируя трафик, попросту невозможно. Не, там конечно, можно нагородить эвристики, но из любого эвристического правила немедленно найдется туча исключений.
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница

Сообщение urry »

я вот все время думаю, как это можно продать...

Сокеты - наиболее популярная форма общения в сети.
Как узнать при dhcp какой сокет тыркнул пакет ?Ну айпишник, увидим, а дальше ? Если он роздан автоматом ?
Сокет -он мак адрес не показывает, который ручками задан, только опросом что-то можно выяснить.
Автономная система, согласен, давно уже не юзает классическое распределение, впрочем, это каждый школьник знает
http://ru.wikipedia.org/wiki/%D0%91%D0% ... 0%B8%D1%8F
ну и ставить BGP на 107-407 стм никто не будет :)

Немного другие задачи. Где ниша именно стм ?
Учитывая наличие там всяких переходников уарт- езернет, микросхем enc60
Контактная информация:
Говорящий с текстолитом
Сообщения: 1658
Зарегистрирован: Вс дек 11, 2011 05:25:04
Откуда: Киев, Украина

Сообщение Tolmi »

urry писал(а): Сокет -он мак адрес не показывает, который ручками задан, только опросом что-то можно выяснить.
На прикладном уровне абсолютно неважно, какой там MAC адрес у отправителя. А если отправитель не рядом в одной сети, а за маршрутизатором, да и еще и в другой среде передачи, то и вообще нет смысла говорить об этом. А делать недоделки, которые работают только в пределах одной, строго определенной сети как-то бессмысленно.
ну и ставить BGP на 107-407 стм никто не будет :)
Ну и при чём тут BGP ? BGP нужен на маршрутизаторах, да ещё и не просто маршрутизаторах, а имеющих более одной связи с интернетом. А это однозначно совсем другие устройства с другой ценой.
Где ниша именно стм ?
Учитывая наличие там всяких переходников уарт- езернет, микросхем enc60
Ниша в датчиках, управляющих автоматах и исполнительных устройствах с единой, универсальной и весьма дешевой средой передачи - Ethernet
Но их нишевость не значит, что нужно отступаться от стандартов, которые давно работают и начинать изобретать велосипеды с треугольными колесами.
In theory, theory and practice are the same. In practice, they're not.
Контактная информация:
Ответить

Вернуться в «Интеграция с ПК»