使用boost解析域名服务
来源:互联网 发布:ubuntu安装依赖库 编辑:程序博客网 时间:2024/05/17 21:38
下面的源码给出了使用boost::asio进行域名解析的方法.
//g++ -g resolver_demo.cpp -o resolver_demo -lboost_system -lpthread//#include <iostream>#include <boost/asio.hpp>#include <boost/system/error_code.hpp>#include <boost/lexical_cast.hpp>using namespace std;using namespace boost::asio;void resolv_connect(io_service& ios, ip::tcp::socket& sock, const char* host, int port){ ip::tcp::resolver rslv(ios); ip::tcp::resolver::query qry(host, boost::lexical_cast<string>(port)); cout << "host_name: " << qry.host_name() << ", service_name: " << qry.service_name() << endl; ip::tcp::resolver::iterator iter = rslv.resolve(qry); ip::tcp::resolver::iterator end; boost::system::error_code ec = error::host_not_found; for( ; ec&&iter!=end; ++iter){ sock.close(); sock.connect(*iter, ec); } if(ec){ cout << "cannot connect" << endl; throw boost::system::system_error(ec); } else if(iter != end){ ip::tcp::endpoint endpoint = iter->endpoint(); cout << "query success!" << endl; cout << "host_ip: " << endpoint.address() << ", port: " << endpoint.port() << endl; } else return;}int main(){ try{ io_service ios; ip::tcp::socket sock(ios); resolv_connect(ios, sock, "news.sohu.com", 80); } catch(exception& e){ cerr << e.what() << endl; return 1; } return 0;}
下面是运行截图
0 0
- 使用boost解析域名服务
- DNS解析与域名服务安全防护策略
- linux系统使用nginx配置多域名服务
- 使用boost/tokenizer对字符串解析拆分
- 使用boost库解析xml配置文件
- 【转】在windows 2000中使用Bind实现域名服务
- 解析boost
- Linux 域名服务
- 使用boost时,编译没通过--无法解析外部符号
- 使用Boost.Spirit实现四则运算字符串的解析
- 使用Boost property tree来解析带attribute的xml
- C++ 中使用boost::property_tree读取解析ini文件
- c++使用jsonCpp和boost库解析json总结
- 使用 boost 解析 XML 文件中的节点属性
- 使用boost::property_tree解析xml与json (一):概述
- 使用boost::property_tree解析xml与json (二):parse_xml设计
- 使用boost::property_tree解析xml与json (三):parse_json设计
- 使用 Boost
- 坑爹无线网卡BCM4313 Rev 1的Linux 驱动,集合三发行版
- 面向对象
- Android开发得到系统时间
- HTML第四天
- iOS开发- 隐藏键盘总结
- 使用boost解析域名服务
- jquery中 $.expr使用小例子
- 【读书笔记】《博弈论》ing
- uploadify http error 500
- linux之通信之信号学习1
- C++抓取网页源代码
- Android简单数据类型的转换
- Android studio 导入第三方库
- uva--10098--Generating Fast, Sorted Permutation