如何使用 Winsock 从数据报的 IP 标头中获取源 IP 地址?
Posted
技术标签:
【中文标题】如何使用 Winsock 从数据报的 IP 标头中获取源 IP 地址?【英文标题】:How do I get the source IP address from a datagram's IP header with Winsock? 【发布时间】:2008-12-07 03:38:14 【问题描述】:我有一个绑定()到 INADDR_ANY 的端口。我正在成功接收数据报。收到后需要读取IP头获取源IP地址。
【问题讨论】:
【参考方案1】:如果你使用标准的 recv 或 read 函数调用,我不相信你能得到它。 recvfrom 调用如下:
int recvfrom(
__in SOCKET s,
__out char *buf,
__in int len,
__in int flags,
__out struct sockaddr *from,
__inout_opt int *fromlen
);
包含一个结构(上面倒数第二个字段),它将接收源地址,您可以根据需要检查该地址。
【讨论】:
以上是关于如何使用 Winsock 从数据报的 IP 标头中获取源 IP 地址?的主要内容,如果未能解决你的问题,请参考以下文章