Hello all, I have a problem with a a casually blocked UDP bind port: My application uses UDP port 50050 and initiates the socket this way: udp::resolver resolver(dFC->myIoService); int port = 50050; bool failed; do{ failed = false; udp::resolver::query query(udp::v4(), IPAddress, port); try { dFC->s = new udp::socket( dFC->myIoService, udp::endpoint(*resolver.resolve(query))); } catch (std::exception &e) { failed = true; int intPort = this->intConverter(port); intPort++; ostringstream conv; conv << intPort; port = conv.str(); cout << "new port: " << port << endl; } while (failed); So I am basically using bind port 50050 and if it fails I am increasing it by one until the bind suceeds. In most cases the bind to port 50050 works fine but casually after a relaunch of the app or a crash the bind port 50050 appears to be blocked which is why it increases to higher numbers. Now I wonder how the port can still be taken although the app has terminated and if there is way to force the app / the OS using port 50050 ? So far I have seen this on OSX only – on Windows and Linux I haven't noticed it yet. Thanks in advance for any pointer how to resolve my isse, best Alex -- http://www.carot.de Email : Alexander@Carot.de Tel.: +49 (0)177 5719797