Home
Monday, 06 October 2008  
Latest Forums
DNS Library PDF Print E-mail
(4 votes)
Written by Andreas Haberstroh   
Tuesday, 17 July 2007
First release of the asio::dns Library

asio::dns is a cross-platform C++ library for sending and receiving DNS resource records.

License

asio::dns is release under the Boost Software License.

Dependencies

asio::dns requires Boost version 1.33 or later and asio version 0.3.8.

Using asio::dns

The asio::dns library is relatively simplistic in design. A simple example of making a DNS request is as follows:

#include <boost/asio.hpp>
#include <boost/asio/dns/resolve.hpp>
using namespace boost::asio;
int main(int argc, char* argv[])
{
   dns::message dns_message("cnn.com", dns::type_a );
   dns::resolve resolver;

   ip::address a_gltd_servers_net( ip::address::from_string("192.5.6.30") );
   resolver.addServer( a_gltd_servers_net );

   ip::address b_gltd_servers_net( ip::address::from_string("192.33.14.30") );
   resolver.addServer( b_gltd_servers_net );

   ip::address c_gltd_servers_net( ip::address::from_string("192.26.92.30") );
   resolver.addServer( c_gltd_servers_net );

   ip::address d_gltd_servers_net( ip::address::from_string("192.31.80.30") );
   resolver.addServer( d_gltd_servers_net );

   ip::address e_gltd_servers_net( ip::address::from_string("192.12.94.30") );
   resolver.addServer( e_gltd_servers_net );

   ip::address f_gltd_servers_net( ip::address::from_string("192.35.51.30") );
   resolver.addServer( f_gltd_servers_net );

   ip::address g_gltd_servers_net( ip::address::from_string("192.42.93.30") );
   resolver.addServer( g_gltd_servers_net );

   ip::address h_gltd_servers_net( ip::address::from_string("192.54.112.30") );
   resolver.addServer( h_gltd_servers_net );

   ip::address i_gltd_servers_net( ip::address::from_string("192.43.172.30") );
   resolver.addServer( i_gltd_servers_net );

   ip::address j_gltd_servers_net( ip::address::from_string("192.48.79.30") );
   resolver.addServer( j_gltd_servers_net );

   ip::address k_gltd_servers_net( ip::address::from_string("192.52.178.30") );
   resolver.addServer( k_gltd_servers_net );

   ip::address l_gltd_servers_net( ip::address::from_string("192.41.162.30") );
   resolver.addServer( l_gltd_servers_net );

   dns::message dns_response = resolver.query(dns_message);

   return 0;
}

 

Comments
Add NewSearch
Write comment
Name:
Website:
Title:
UBBCode:
[b] [i] [u] [url] [quote] [code] [img] 
 
 
 

Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved.

 
< Prev   Next >
Top