tools | ||
.gitignore | ||
client.py | ||
LICENSE | ||
README.md | ||
spykhanat.py |
clientbot
Emulate Client (Python Script)
spykhanat.py
Convert pcap (capture network) on yaml file to see communication between server and client.
Usage
Launch network capture
sudo tcpdump -i [networkd card] -w [Pcap output]
ex.: sudo tcpdump -i eth0 -w capture-2020-11-28-17-37-57.pcap
Extract information
python3 spykhanat.py -m [localization msg.xml] --yaml [Yaml Output file] -w [localisation database.xml] -p [Pcap input] --filter-host-service='[Ip address: Port server khaganat]'
Ex.: python3 spykhanat.py -m ~/khanat/khanat-opennel-code/code/ryzom/common/data_common/msg.xml --yaml capture-2020-11-28-17-37-57.yml -w ~/khanat/khanat-opennel-code/code/ryzom/common/data_common/database.xml -p capture-2020-11-28-17-37-57.pcap --filter-host-service='127.0.0.1:47851'
Analyze result
you can see the result in yaml output
Field:
- packet : raw data
- block_Client : data sent by client
- block_Server : data sent by server
- state : message docoded or partially decoded)
- impulse : impulse message
- impulseserver : message impulse server decoded
- Message : Message analyzed (one line by block)
Detail message format (ex.: <0:31> (Sint32) CurrentSendNumber => 42 : 00000000000000000000000000101010) (Type) [Function] => Value : [Value in binary] [(optional) value real]
- position data : Begin:End
- Format data (Signed/Unsigned Integer, String, Number of bit)
- Function (type of value, function in khaganat)
- Value : value in integer
- Value in binary
- Value convert for khaganat (sometimes is keyword)