Index: source/ariba/utility/bootstrap/modules/periodicbroadcast/PeriodicBroadcast.h
===================================================================
--- source/ariba/utility/bootstrap/modules/periodicbroadcast/PeriodicBroadcast.h	(revision 4870)
+++ source/ariba/utility/bootstrap/modules/periodicbroadcast/PeriodicBroadcast.h	(revision 4872)
@@ -125,11 +125,26 @@
 	public:
 		udp_server(boost::asio::io_service& io_service, ServiceList* _services, boost::mutex* _servicesmutex)
-			: socket_v4(io_service, udp::endpoint(udp::v4(), PeriodicBroadcast::serverport_v4)),
-			  socket_v6(io_service, udp::endpoint(udp::v6(), PeriodicBroadcast::serverport_v6)),
-			  services(_services), servicesmutex(_servicesmutex) {
-
-			boost::asio::socket_base::broadcast option(true);
-			socket_v4.set_option(option);
-			socket_v6.set_option(option);
+			: services(_services), servicesmutex(_servicesmutex),
+				socket_v4(io_service), socket_v6(io_service) {
+
+			boost::asio::ip::udp::endpoint listen_endpoint_v4(
+					boost::asio::ip::address_v4::broadcast(),
+					PeriodicBroadcast::serverport_v4);
+
+			boost::asio::ip::udp::endpoint listen_endpoint_v6(
+					boost::asio::ip::address_v6::from_string("ff02::1"),
+					PeriodicBroadcast::serverport_v6);
+
+			socket_v4.open( listen_endpoint_v4.protocol() );
+			socket_v6.open( listen_endpoint_v6.protocol() );
+
+			socket_v4.set_option( boost::asio::ip::udp::socket::reuse_address(true) );
+			socket_v6.set_option( boost::asio::ip::udp::socket::reuse_address(true) );
+
+			socket_v4.set_option( boost::asio::socket_base::broadcast(true) );
+			socket_v6.set_option( boost::asio::socket_base::broadcast(true) );
+
+			socket_v4.bind( listen_endpoint_v4 );
+			//socket_v6.bind( listen_endpoint_v6 );
 
 			start_receive();
