网络编程学习笔记(RES_USE_INET6解析器选项)

来源:互联网 发布:高压柜模型实时数据 编辑:程序博客网 时间:2024/06/14 03:34

通过这个选项来通知解析器让gethostbyname返回IPv6地址而不是IPv4地址

1、应用 程序本身可以设置此选项,首先调用解析器的res_init函数,然后打开该选项:

#include <resolv.h>res_init();_res.options |= RES_USE_INET6;

这必须在第一次调用 gethostbyname或gethostbyaddr之前完成。此选项仅对那些设置了此选项的应用程序有效

2、如果环境变量RES_OPTIONS含有串inet6,则此选项打开。此选项的作用依赖于环境变量的范围。如果我们在.profile文件中以export属性设置 ,如exprot RES_OPTIONS=inet6,则它对登录shell开始运行的每个程序都有效。但如果我们仅在命令行上设置 该环境变量,则它仅对那个命令有影响。

3、解析器配置文件(一般为/etc/resolv.conf)可以包含如下行:

options inet6

在解析器配置文件中设置此选项影响主机上调用 解析器函数的所有应用程序,因此,这项技术要直到结构hostent中返回的IPv6地址可以被主机上的所有应用程序所处理时才能使用

第一种方法以每个应用程序为基础设置 此选项,第二个方法 以每个用户为基,第三个方法以整个系统为基


0 0
原创粉丝点击