Sese Framework  x.y.z
A cross-platform framework
载入中...
搜索中...
未找到
sese::net::dns::Resolver类 参考

域名解析器 更多...

#include <Resolver.h>

Public 成员函数

 Resolver ()
 
bool addNameServer (const std::string &ip, uint16_t port=53)
 
void addNameServer (const IPAddress::Ptr &ip_address)
 
std::vector< IPAddress::Ptrresolve (const std::string &hostname, uint16_t type)
 

Private 成员函数

std::vector< IPAddress::Ptrresolve (const IPAddress::Ptr &name_server, const std::string &hostname, uint16_t type)
 

Private 属性

std::vector< IPAddress::Ptrname_servers
 
std::random_device device
 
std::mt19937 generator
 

详细描述

域名解析器

构造及析构函数说明

◆ Resolver()

Resolver::Resolver ( )

成员函数说明

◆ addNameServer() [1/2]

void Resolver::addNameServer ( const IPAddress::Ptr & ip_address)

添加 NameServer

参数
ip_addressIP

引用了 name_servers.

◆ addNameServer() [2/2]

bool Resolver::addNameServer ( const std::string & ip,
uint16_t port = 53 )

添加 NameServer

参数
ipIP
port端口
返回
是否添加成功,这取决于填写的IP地址格式

引用了 sese::net::IPAddress::create() , 以及 name_servers.

被这些函数引用 sese::internal::net::service::dns::DnsService::addUpstreamNameServer() , 以及 sese::internal::net::service::dns::DnsService::addUpstreamNameServer().

◆ resolve() [1/2]

std::vector< sese::net::IPAddress::Ptr > Resolver::resolve ( const IPAddress::Ptr & name_server,
const std::string & hostname,
uint16_t type )
private

◆ resolve() [2/2]

std::vector< sese::net::IPAddress::Ptr > Resolver::resolve ( const std::string & hostname,
uint16_t type )

解析域名

参数
hostname域名
type类型 (sese::net::dns::TYPE_A || sese::net::dns::TYPE_AAAA)
返回
解析结果

引用了 name_servers , 以及 resolve().

类成员变量说明

◆ device

std::random_device sese::net::dns::Resolver::device
private

◆ generator

std::mt19937 sese::net::dns::Resolver::generator
private

被这些函数引用 resolve().

◆ name_servers

std::vector<IPAddress::Ptr> sese::net::dns::Resolver::name_servers
private

被这些函数引用 addNameServer(), addNameServer() , 以及 resolve().


该类的文档由以下文件生成: