Wireshark - Lua Dissector, определите, какая конечная точка открыла соединение? - PullRequest
1 голос
/ 19 августа 2011

Я пишу диссектор для протокола, с которым мне нужно работать.Этот протокол работает поверх TCP и имеет состояние.

Чтобы правильно разделить поля, мне нужно определить, какая конечная точка открыла соединение TCP (клиент).

Есть ли способ получитьэта информация от tcp диссектора?Должен ли я написать кран?Мне не очень понятно, как это сделать в lua.

Крест размещен на сайте стека Wireshark здесь .

1 Ответ

1 голос
/ 09 ноября 2011

Чтобы написать анализатор протокола с сохранением состояния в Lua, вы можете использовать замыкания для хранения информации о состоянии.Вы можете легко расшифровать, с какой конечной точки начался диалог, если проанализировать флаги SYN / SYN + ACK для первых пакетов данного потока TCP # (который генерируется диссектором TCP).

Чтобы сделать эту работу, вы должны установить почтовый диссектор и проверить поле 'tcp.stream'.

Вы можете проверить эту технику в источниках моего маленького Lua Wireshark InstistИнформация о состоянии HTTP

...