[有关问题]关于获取IP,子网掩码,DNS.

[问题]关于获取IP,子网掩码,DNS...
请问

如何获取IP,子网掩码,DNS,网关等网络配置信息?是不是有一套固定的做法?

还没怎么接触网络编程,希望能得到详细的指点。

------解决方案--------------------
取ipconfig /all的结果
------解决方案--------------------
http://www.codeguru.com/cpp/i-n/internet/network/article.php/c10855/

这个比较全面 :)
------解决方案--------------------
下面是我计算广播地址的函数,有子网掩码和IP
#include <Ws2tcpip.h>

int CIntraDoorApp::GetBroadcastIP(SOCKET s, DWORD dwBrdcstIP[])
{
INTERFACE_INFO info[20]={0};//assume 20 interfaces is enough;
DWORD dwRet;
char buff[256];
dwBrdcstIP[0]=0;
if (s==INVALID_SOCKET) return -1;
if(0!=WSAIoctl(s,SIO_GET_INTERFACE_LIST, buff,256,info,sizeof(INTERFACE_INFO)*5+1,&dwRet,NULL,0)) return -1;
int nRet=0;
DWORD dwIP,dwMask;
for(int i=0;info[i].iiFlags!=0;i++)
{
memcpy(&dwIP,&info[i].iiAddress.AddressIn.sin_addr,4);
memcpy(&dwMask,&info[i].iiNetmask.AddressIn.sin_addr,4);
dwBrdcstIP[nRet]=(dwIP&dwMask)|(~dwMask);
nRet++;
}
return nRet;
}