C ++ Boost.asio Ping

Estou tentando fazer um programa que listará todos os endereços IP dos dispositivos em uma rede. Um dos principais componentes disso é poder executar ping em dispositivos. Este programa deve funcionar no Linux, Windows e Mac, então escolhi a biblioteca Boost.

Consegui encontrar este exemplo na documentação:http://www.boost.org/doc/libs/1_47_0/doc/html/boost_asio/example/icmp/ping.cpp

Eu sou bastante experiente em C ++ quando usando OpenGL 3.1 e Shaders, mas quando eu executo este programa pinga mais e mais (454+) e entender que está me jogando por um loop (sem trocadilhos), parece conter uma quantidade substancial de taquigrafia, funções que eu nunca vi, etc.

Existe um método mais simples para executar ping em uma máquina com o Boost: asio? ou Existe uma maneira que eu possa obter este método para executar apenas 4 vezes e retornar o tempo médio de resposta?

questionAnswers(1)

yourAnswerToTheQuestion