我正在处理图形化Windows应用程序。因此,首选使用c ++和c#的解决方案。
对于我的应用程序,我需要从特定进程的活动udp连接中获取远程地址和端口。
我尝试了IP Helper
API,但是UDP的方法没有提供远程地址和端口。
我已经看到了这些帖子Get Destination Ip/Port of active udp Connection?和Remote address of active UDP connections in Windows using IP Helper。
我了解为什么IP Helper无法完成工作(udp是无连接的并且需要捕获数据包),但是我没有发现具体的实现方法。
您是否已准备好使用解决方案或接近解决方案?
答案 0 :(得分:0)
您已经发现UDP是无连接的,因此OS不会像TCP那样跟踪远程方信息。与TCP套接字不同,UDP套接字可以一次与多个远程方通信,其中sendto()
指定目标IP /端口,recvfrom()
报告发送者的IP /端口。
我了解为什么IP Helper无法完成工作(udp是无连接的并且需要捕获数据包),但是我没有发现具体的实现方法。
您需要使用数据包捕获库,例如libpcap,并手动跟踪看到的外发数据包的ips /端口。