我们可以通过调用系统API函数去获取机器上所有网卡的信息,可以获取到网卡上配置的IP、网关及DNS等信息。调用系统API可以获取最佳路由网卡,可以遍历系统路由表中的条目,可以看到默认路由和添加的策略路由。
1、获取系统中所有网卡的信息
主要是通过调用系统API函数GetAdaptersInfo来获取网卡上配置的IP、网关、DNS等信息,相关代码如下:
// 获取所有网卡信息
void GetNetAdaptersInfo
{
// IP路由表
ULONG ulOutBufLen = NULL;
PMIB_IPFORWARDTABLE pIpForwardTable = NULL;
GetIpForwardTable( pIpForwardTable, &ulOutBufLen, TRUE );
pIpForwardTable = (PMIB_IPFORWARDTABLE)malloc( ulOutBufLen );
if ( NULL != pIpForwardTable )
{
// 找到最佳路由,读出对应的IP索引
if ( NO_ERROR =&