Страница 1 из 1
Определение параметров локалки в которую включен девайс
Добавлено: Пн июн 03, 2013 13:30:38
zenek
Здравствуйте!, имеется локальная сеть без DHCP сервера, есть девайс, который должен работать в этой ( и не только этой сети ), с DHCP все понятно, а вот как девайсу выбрать себе IP из диапазона адресов конкретной локальной сети понять не могу. Может кто подскажет?
Спасибо.
Re: Определение параметров локалки в которую включен девайс
Добавлено: Пн июн 03, 2013 13:46:42
ploop
Может, для начала скажете, что за секретный такой девайс?
Re: Определение параметров локалки в которую включен девайс
Добавлено: Пн июн 03, 2013 13:57:25
zenek
девайс прост: стоит МК stm32f107 + PHY микросхема DP83848, на контроллере поднят стек lwIP, так вот с DHCP все работает все понятно, и если жестко задать адрес, маску и шлюз сети тоже работает, но это если я знаю все эти параметры сети. А вот если подключусь в сеть о которой мне не известно ничего, как в ней определить какой диапазон адресов используется?
Re: Определение параметров локалки в которую включен девайс
Добавлено: Пн июн 03, 2013 14:03:54
blackx
Видимо, однозначно определить не получится. Если ПК подключается к такой сети, то нужно знать IP шлюза и маску этой подсети как минимум. Для определения свободного IP можно "пинговать" все по порядку.
А если у вас нет никакой информации даже о адресе шлюза - то ничего не сделать.
Re: Определение параметров локалки в которую включен девайс
Добавлено: Пн июн 03, 2013 14:08:06
ploop
zenek, единственный вариант - сделать интерфейс, где вручную можно указать параметры сети.
Если вы включаетесь в неизвестную сеть, то никак. Ну или разворачивать полноценную систему, со сканерами диапазонов и прочими хакерскими штуками.
Re: Определение параметров локалки в которую включен девайс
Добавлено: Пн июн 03, 2013 14:11:54
zenek
Похоже придется ручками забивать себе параметры сети при подключении к сети без DHCP сервера... А так хотелось автоматизировать все это дело.
Re: Определение параметров локалки в которую включен девайс
Добавлено: Пн июн 03, 2013 14:43:23
ploop
Вот для автоматизации как раз и придумали DHCP

Re: Определение параметров локалки в которую включен девайс
Добавлено: Ср июн 05, 2013 13:16:42
ibiza11
Можно попробовать ловить все пакеты сети и анализировать их. По накопленным данным делать выводы.
Re: Определение параметров локалки в которую включен девайс
Добавлено: Ср июн 05, 2013 13:47:05
ploop
Я и говорю,
разворачивать полноценную систему со всякими хакерскими штуками. 
Re: Определение параметров локалки в которую включен девайс
Добавлено: Ср июн 05, 2013 14:11:03
ibiza11
ну мне казалось это не таким уж сложным) тем более с уже работающим стеком.
Re: Определение параметров локалки в которую включен девайс
Добавлено: Сб июн 08, 2013 07:12:18
urry
да что там хакерского...
Поднять серверный сокет, прибиндить ему 0 айпишник и ввести в состояние листен.
Первый же пришедший пакет ему покажет, откуда пришло - айпишник , но порт должен быть известен заранее.
Re: Определение параметров локалки в которую включен девайс
Добавлено: Сб июн 08, 2013 10:21:33
blackx
А адрес шлюза то из этого как получить?
Re: Определение параметров локалки в которую включен девайс
Добавлено: Сб июн 08, 2013 10:48:25
urry
адрес шлюза - это 1 в конце, широковещалка 255, особенно не порезвишься ...
Re: Определение параметров локалки в которую включен девайс
Добавлено: Сб июн 08, 2013 11:01:01
blackx
Ну это как правило так. Хочется то общий алгоритм поиска, подходящий для любых сетей.
Re: Определение параметров локалки в которую включен девайс
Добавлено: Вс июн 09, 2013 01:24:04
Cheba
urry писал(а):адрес шлюза - это 1 в конце, широковещалка 255, особенно не порезвишься ...
Ой, ни первое, ни второе аксиомой не является.

Адрес шлюза в сети без DHCP анализом пакетов получить нельзя вообще.
Re: Определение параметров локалки в которую включен девайс
Добавлено: Пн июн 10, 2013 17:34:31
ibiza11
Re: Определение параметров локалки в которую включен девайс
Добавлено: Пн июн 10, 2013 22:40:49
urry
стоп, стоп, стоп...
Поправьте меня, где я неправ.
Пусть у нас 30 устройств со стеком lwip - без дополнительных капиталовложений стек поддерживает не более 5 сокетов.
Серверное устройство требует 30+1 сокетов, не влезаем - следовательно, у нас 30 клиентских сокетов и 1 серверный - и он не наш, аппаратно его поддержать не сможем физически.
Или как?
Re: Определение параметров локалки в которую включен девайс
Добавлено: Пн июн 10, 2013 23:39:50
Cheba
И причём тут сокеты?
У нас есть
TCP адрес A.B.C.D и номер порта Z, однозначно определяющий сокет.
Пусть МК устройство с примитивным стеком не умеет более 5 сокетов ( т.е. не может поддерживать более 5 одновременно открытых соединений), но
1) таких устройств в сети может быть миллиарды и они все могут работать одновременно
2) кроме МК в сети могут быть вполне "разумные" устройства, которые могут поддерживать десятки тысяч одновременно открытых сокетов, и могут быть маршрутизаторы (шлюзы), которые вообще ничего не знают про то, что за информация через них проходит. Сеть может быть нарезана "по понятиям", в смысле соответственно устаревшим правилам (первая цифра от 1 до 126 - значит это сеть класса А, 16 миллионов хостов), но чаще нарезается исходя из здравого смысла ( мне провайдер выделил 6 адресов из сети 94.ХХХ.ХХХ.128, с 129 по 134, а вовсе не сеть класса А )
Но и наоборот, 10-е сети никто, как правило локально не нарезает(а что, не жалко) , в результате узнать такие тонкости без DHCP, просто анализируя трафик, попросту невозможно. Не, там конечно, можно нагородить эвристики, но из любого эвристического правила немедленно найдется туча исключений.
Re: Определение параметров локалки в которую включен девайс
Добавлено: Вт июн 11, 2013 00:12:59
urry
я вот все время думаю, как это можно продать...
Сокеты - наиболее популярная форма общения в сети.
Как узнать при dhcp какой сокет тыркнул пакет ?Ну айпишник, увидим, а дальше ? Если он роздан автоматом ?
Сокет -он мак адрес не показывает, который ручками задан, только опросом что-то можно выяснить.
Автономная система, согласен, давно уже не юзает классическое распределение, впрочем, это каждый школьник знает
http://ru.wikipedia.org/wiki/%D0%91%D0% ... 0%B8%D1%8F
ну и ставить BGP на 107-407 стм никто не будет
Немного другие задачи. Где ниша именно стм ?
Учитывая наличие там всяких переходников уарт- езернет, микросхем enc60
Re: Определение параметров локалки в которую включен девайс
Добавлено: Вт июн 11, 2013 15:10:47
Tolmi
urry писал(а):
Сокет -он мак адрес не показывает, который ручками задан, только опросом что-то можно выяснить.
На прикладном уровне абсолютно неважно, какой там MAC адрес у отправителя. А если отправитель не рядом в одной сети, а за маршрутизатором, да и еще и в другой среде передачи, то и вообще нет смысла говорить об этом. А делать недоделки, которые работают только в пределах одной, строго определенной сети как-то бессмысленно.
ну и ставить BGP на 107-407 стм никто не будет
Ну и при чём тут
BGP ? BGP нужен на маршрутизаторах, да ещё и не просто маршрутизаторах, а имеющих более одной связи с интернетом. А это однозначно совсем другие устройства с другой ценой.
Где ниша именно стм ?
Учитывая наличие там всяких переходников уарт- езернет, микросхем enc60
Ниша в датчиках, управляющих автоматах и исполнительных устройствах с единой, универсальной и весьма дешевой средой передачи - Ethernet
Но их нишевость не значит, что нужно отступаться от стандартов, которые давно работают и начинать изобретать велосипеды с треугольными колесами.