首页 > 解决方案 > WSAIoctl() 中的 IP 地址的顺序是什么?

问题描述

我很想知道,控制代码如何WSAIoctl()创建SIO_ROUTING_INTERFACE_QUERY主机的 IP 地址列表?特别是,它使用什么标准来排序 IP 地址?

标签: socketswinapiipwinsock

解决方案


它只返回一个!来自MSDN(重点是我的):

SIO_ROUTING_INTERFACE_QUERY(操作码设置:I,O,T==1)获取本地接口地址(表示sockaddr结构),用于发送到输入缓冲区中指定的远程地址...

确实可能存在到目标地址的多条路由,在这种情况下,它无疑会选择最便宜的(路由表条目每个都包含一个成本或度量,请参见此处)。

或者您的意思是SIO_ADDRESS_LIST_QUERY?,在这种情况下,Windows 完全知道您在计算机上安装了哪些网络接口,它们返回的顺序是极其不重要的。


推荐阅读