Скрыть объявление
На нашем форуме недоступен просмотр изображений для неавторизованных пользователей. Если Вы уже зарегистрированы на нашем форуме, то можете войти. Если у Вас еще нет аккаунта, мы будем рады, если Вы к нам присоединитесь. Зарегистрироваться Вы можете здесь.

Вопрос Перехват пакетов для других компьютеров в той же сети к которй подключен ESP8266

Тема в разделе "Железные вопросы по esp8266", создана пользователем kobb500, 28 окт 2018.

  1. kobb500

    kobb500 Новичок

    Сообщения:
    10
    Симпатии:
    0
    Возможен ли такой вариант, когда ESP8266 подключен к сети и перехватывать пакеты посланные другим компьютерам от других компьютеров. Такой себе "слушатель".
    Я читал про снифферы на ESP8266, но это не то, они перехватывают пакеты не подключаясь к сети.
    У меня задача другая, перехватывать пакеты обмена между компьютерами в той же сети.
    Я хочу перехватывать пакеты с определенного мак адреса или IP и по определенному порту, получать их и обрабатывать.
    Если быть точнее, то перехватывать обмен между двумя MODBUS TCP устройствами, там длинна пакетов не большая.
    Для начала я хочу выяснить, возможно ли такое?
     
  2. kobb500

    kobb500 Новичок

    Сообщения:
    10
    Симпатии:
    0
    В сети между устройствами нет шифрования никакого, они гоняют между собой пакеты с информацией по 6 - 20 байт.
    Широковещательные пакеты они не умеют слать а если и умеют, то это уже другой режим работы который не желателен для их сети.
    В общем там не ESP а ПЛК (промышленные контроллеры). Я могу обратится напрямую к ПЛК с другого устройства он мне ответит, но при этом не ответит серверу, ну и в общем у сервера будет в этот момент сбой, что не получил ответ от устройства. Там одноранговая сеть, в которй есть только один мастер (это сервер) а остальные все подчиненные. Вот поэтому и не хочется вклиниваться в их иерархию, хотя я могу в конечно выделить в нужном мне ПЛК с которого мне нужно получать данные, я там могу дописать еще один модбас слейв, котоый будет чисто для меня отвечать.
    Но мне лень пока туда лезть, пока все хорошо работает.
    Ну и вот как-бы возникла идея, сделать такого вот "молчаливого слушателя", что-то на подобии wireshark или smartsniff, только для одной цели, слушать один порт и все, ну вот как-то так)
     
  3. kobb500

    kobb500 Новичок

    Сообщения:
    10
    Симпатии:
    0
    .
    У меня в распоряжении только контроллеры ARDUINO, STM32, ESP8266 и ESP32, ну то что может работать с сетью.
    Raspberry PI есть, есть конечно и промышленные контроллеры ПЛК160 от ОВЕН и Allen-Bradley)))
    Но если использовать Raspberry PI или ПЛК, то смысла уже нет, проще тогда уже компьютер поставить или ту же Raspberry PI использовать.
    Тогда конечно самый простой вариант для меня - это действительно на сервере сделать переадресацию или в устройстве программно добавить еще один канал для запросов и ответов.
    Но мне интересно сделать это дешево и сердито.
    Я подключался к к сети и видел пакеты обмена в WireShark на 502 порту.
    Сервер шлет устройству запрос: 00 01 00 00 00 06 01 03 00 00 00 06
    Устройство ему отвечает: 00 01 00 00 00 0F 01 03 0C 01 79 00 4A 00 58 00 0B 00 45 00 36
    Меня интересует только ответ устройства и только последние 12 байт в которых полезная информация, в 12 байтах передаётся 6 параметров, это как-бы 6 каналов информации от разных датчиков. Ну например мне нужна информация только по одному датчику, но все равно нужно принимать весь пакет. А что уже с ним делать, я уже научился!)
    Вопрос возможно риторический, возможно из-за комутаторов и роутеров не получится перехватить обмен, но хотябы узнать, возможно ли принять пакет посланный не мне а кому-то другому?
     

Поделиться этой страницей