Как получить данные из TcpPacket в удобочитаемом формате с помощью SharpPcap?
Я строю сниффер для моего последнего года проекта. Я хочу извлечь данные из TCP в удобочитаемом формате.
Я получаю данные в шестнадцатеричном формате с помощью BitConverter, но я хочу, чтобы данные были читаемыми, т.е. все ссылки, просматриваемые Http, запросы Get, запросы Post и другие данные в выводе. Вот мой код:
while((packet = device.GetNextPacket()) != null)
{
var pack = PacketDotNet.Packet.ParsePacket(packet.LinkLayerType, packet.Data);
var tcp = TcpPacket.GetEncapsulated(pack);
if(tcp != null)
{
var sp = tcp.SourcePort;
var dp = tcp.DestinationPort;
var data = BitConverter.ToString(tcp.PayloadData);
Console.WriteLine("{0}:{1}:{2}",sp,dp,data);
}
}
Пожалуйста, помогите, у меня меньше времени и я много искал, но ничего не смог получить..
заранее спасибо
1 ответ
Вы можете использовать следующее:
var data = Encoding.Unicode.GetString(tcp.PayloadData);