Skip to content

Remote debug (legacy)

包布丁 edited this page Feb 10, 2022 · 1 revision

A debug UDP client is built in YtFlow starting from v0.0.4. Developers are able to watch background task lifecycle or capture all packets going through the VPN interface easily.

Setup

On your PC which connects to the same network as the device running YtFlow, start a UDP server at port 9000 and record raw packets using the following shell command:

nc -klu 9000 | tee /dev/stderr | grep -P '(^000)|\d\d:' > raw_packets.txt

Firewall settings should be configured properly if necessary. If UDP host is a loopback address (localhost, 127.0.0.1 or ::1), make sure to remove loopback restriction for YtFlow app.

In YtFlow app UI, enter the server address (must be IP address) and port and tap "Enable".

Debugging

Connect YtFlow proxy from the app UI as usual. All diagnostic messages and data packets going through the VPN interface are sent to the debug server.

To inspect the packets using Wireshark, we use text2pcap.exe provided by Wireshark to convert the raw packets in text form to pcap format.

text2pcap.exe -e 0x800 -t %%H:%%M:%%S. "PATH_TO_RAW_PACKETS\raw_packets.txt" "packets.pcap"

The output file packets.pcap is ready for inspection.

Note

The debug feature has a huge impact on performance when enabled.

Clone this wiki locally