Re[4]: Получение данных мультикастом
От: prrt  
Дата: 01.03.17 13:39
Оценка:
Да, действительно...

Исправил:

boost::asio::ip::address loc_address = boost::asio::ip::address::from_string("192.168.2.2");
boost::asio::ip::address listen_address = boost::asio::ip::address_v4::any();
boost::asio::ip::address multicast_address = boost::asio::ip::address::from_string("239.255.0.1");
boost::asio::ip::udp::endpoint listen_endpoint(listen_address, 30001);
socket_.open(listen_endpoint.protocol(), error);
socket_.set_option(boost::asio::ip::udp::socket::reuse_address(true));
socket_.bind(listen_endpoint);
socket_.set_option(boost::asio::ip::multicast::join_group(multicast_address.to_v4(), loc_address.to_v4()));
socket_.async_receive_from(
    boost::asio::buffer(&inputData[0], 10000000), sender_endpoint_,
        strand_.wrap(
            boost::bind(&ClientUdp::handle_receive_from, shared_from_this(),
              boost::asio::placeholders::error,
              boost::asio::placeholders::bytes_transferred)));

И всё-равно ничего не получает. Прямо беда какая-то, хоть в исходниках tcpdump ковыряйся, чтобы оттуда нужный код взять, ведь он-то работает...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.