Я думаю (основываясь на поиске на форумах), что NetCat - лучший вариант, но хотел узнать, предпочтительны ли другие.
У кого-нибудь есть хорошие успехи с инструментом для создания пакетов (особенно на Mac)? Я пробовал HPing, но возникли проблемы. Я сейчас изучаю NetCat ('nc' на Mac), но он не работает, как я думал. По сути, я захватил несколько пакетов, которые пульт дистанционного управления отправляет по сети Wi-Fi для включения и выключения света (с использованием контроллеров X10), и я ищу способ воспроизвести их, создав TCP-пакет из командной строки.
Я использовал Wireshark для прослушивания трафика, поэтому знаю, что это пакет: DEVICE -sendplc- "C4 DIM 10"
Я пытаюсь: echo 'DEVICE -sendplc- "C4 DIM 10"'> nc 192.168.2.196 6003, но от принимающей системы нет ответа.
Точный байтовый поток (если кто-то захочет проверить, что я получил правильный фрейм данных): 08004642f1b400260897ad6308004500004b08e240004006aaf5c0a802c1c0a802c4d8d7177399aab39 e57ff4753801880ae37ea00637e24e4703204e24e32564e32864e642e325e64ea326e4eaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ,ющa, su,,, с
Следующий шаг, который я собираюсь проверить, - убедиться, что пакет поступает точно, путем обнюхивания и сравнения его с оригиналом.
Проверять, выписываться Scapy. это доступный как macport или просто скачайте, соберите и установите его самостоятельно.
Разве это не нравится, когда добавляется эхо новой строки? Вы пробовали использовать echo -n, чтобы не вводить новую строку?
Стандартное место для поиска инструментов для создания пакетов - это страница Sectools: 4 лучших инструмента для создания пакетов. Scapy оттуда, вероятно, лучше всего подходит для ваших нужд.
В этом случае новый нпинг инструмент из того же источника тоже может быть интересной попыткой.
Я вижу, что вы генерируете IP-пакет Ethernet, это должно быть осуществимо с нпинг.
Я понимаю, что это была проблема с конвейером unix. Netcat работал отлично, мне нужно было использовать | вместо> для отправки данных в NC.
Спасибо, Брэд, ты дал мне правильную идею.