突破自身IP访问限制,访问国外站点。教育网、过去的169网等网络用户可以通过代理访问国外网站。
访问一些单位或团体内部资源,如某大学FTP(前提是该代理地址在该资源 的允许访问范围之内),使用教育网内地址段免费代理服务器,就可以用于对教育网开放的各类FTP下载上传,以及各类资料查询共享等服务。
突破中国电信的IP封锁:中国电信用户有很多网站是被限制访问的,这种限制是人为的,不同Serve对地址的封锁是不同的。所以不能访问时可以换一个国外的代理服务器试试。
提高访问速度:通常代理服务器都设置一个较大的硬盘缓冲区,当有外界的信息通过时,同时也将其保存到缓冲区中,当其他用户再访问相同的信息时, 则直接由缓冲区中取出信息,传给用户,以提高访问速度。
隐藏真实IP:上网者也可以通过这种方法隐藏自己的IP,免受攻击。
鉴于上述原因,代理服务器大多被用来连接INTERNET(国际互联网)和INTRANET(局域网)。在国内,所谓中国多媒体公众信息网和教育网都是独立的大型国家级局域网,是与国际互联网隔绝的。出于各种需要,某些集团或个人在两网之间开设了代理服务器,如果我们知道这些代理服务器的地址,就可以利用它到达国外网站。
这里的代码可以打印出电脑默认的DNS服务器
参考资料:http://blog.csdn.net/shimazhuge/article/details/8949508
#pragma warning(disable:4996)#include <stdio.h>
#include <WinSock2.h>
#include <iphlpapi.h>
#pragma comment(lib, "IPHLPAPI.lib")
#pragma comment(lib, "ws2_32.lib")
int main() // 获取本地主机名、域名和DNS服务器信息
{
// 声明变量
FIXED_INFO * FixedInfo // 定义保存本地计算机网络参数信息的结构体指针
ULONG ulOutBufLen // 保存获取到的本地计算机网络参数信息结构体链表的长度
DWORD dwRetVal // 调用GetNetworkParams()函数的返回值
IP_ADDR_STRING * pIPAddr // 保存所有DNS服务器的IP地址列表
FixedInfo = (FIXED_INFO *)GlobalAlloc(GPTR, sizeof(FIXED_INFO)) // 为FixedInfo结构体分配内存空间
ulOutBufLen = sizeof(FIXED_INFO) // 初始化ulOutBufLen变量值
// 第1次调用GetNetworkParams()函数,获取返回结果的大小到ulOutBufLen中
if (ERROR_BUFFER_OVERFLOW == GetNetworkParams(FixedInfo, &ulOutBufLen))
{
GlobalFree(FixedInfo)
FixedInfo = (FIXED_INFO *)GlobalAlloc(GPTR, ulOutBufLen)
}
// 第2次调用GetNetworkParams()函数,以前面获取的ulOutBufLen作为参数,
if (dwRetVal = GetNetworkParams(FixedInfo, &ulOutBufLen) != ERROR_SUCCESS)
{
printf("调用GetNetworkParams()函数失败。返回值: %08x\n", dwRetVal)
}
else
{
printf("\nDNS服务器列表:\n")
printf("%s\n", FixedInfo->DnsServerList.IpAddress.String)
pIPAddr = FixedInfo->DnsServerList.Next
while (pIPAddr)
{
printf("\t%s\n", pIPAddr->IpAddress.String)
pIPAddr = pIPAddr->Next
}
}
printf("按下回车键结束\n")
getchar()
return 0
}
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)