Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7768847
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 1, 20262026-06-01T16:01:21+00:00 2026-06-01T16:01:21+00:00

In my application I hyave created a datagarm socket and binded a port say

  • 0

In my application I hyave created a datagarm socket and binded a port say 9999 to ip 192.168.173.1 now i want to bind the port to a new ip say 192.168.173.2
but i am not able to do it
Steps i followed

1 DatagramSocket s= new DatagramSocket(port,ip1);
2 s.disconnect();

s.close();

s= new DatagramSocket(port,ip2);

but this gives a

java,net,BindException :Address already in use : Cannot bind

Any insight would be very helpful.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-01T16:01:23+00:00Added an answer on June 1, 2026 at 4:01 pm

    To avoid exceptions when trying to unbind and rebind, you would set each created socket as reusable. In order to do so, you MUST create an unbound socket:

    DatagramSocket s = new DatagramSocket(null);
    s.setReuseAddress(true);
    s.bind(someSocketAddress);
    

    More info:
    http://docs.oracle.com/javase/7/docs/api/java/net/Socket.html#setReuseAddress(boolean)

    P.S. The timeout period that is the main reason for a BindException under such circumstances when using a TCP may not apply to UDP sockets, but the SO_REUSE should allow you to rebind instantly anyway.
    http://docs.oracle.com/javase/7/docs/api/java/net/DatagramSocket.html#setReuseAddress(boolean)

    Here are a few examples:

    final int port = 55880;
    

    A) No reuse, no close = Address already in use

    DatagramSocket s = new DatagramSocket(null);
    s.bind(new InetSocketAddress("127.0.0.1", port));
    
    s = new DatagramSocket(null);
    s.setReuseAddress(true);
    s.bind(new InetSocketAddress("localhost", port));
    

    B) Reuse, no close = no complaints

    DatagramSocket s = new DatagramSocket(null);
    s.setReuseAddress(true);
    s.bind(new InetSocketAddress("127.0.0.1", port));
    
    s = new DatagramSocket(null);
    s.setReuseAddress(true);
    s.bind(new InetSocketAddress("localhost", port));
    

    C) No reuse, close = no complaints (for datagram sockets only)

    DatagramSocket s = new DatagramSocket(null);
    s.bind(new InetSocketAddress("127.0.0.1", port));
    s.close();
    
    s = new DatagramSocket(null);
    s.bind(new InetSocketAddress("localhost", port));
    s.close();
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

In my application I have created 20 buttons with in a scroll view, now
I'm new to Android and socket programming. I want to create an android application
I have created a play application and have some models. One of them contains
I have created application where i just need to access data form assets folder.
I have created one Catalyst application and I have created Schema and Model using
I have an application where i have created a thread which must check the
I have created an application which needs 'hand-over' to the support group in the
I have created an application that writes some data to the root folder of
I have created an application that runs in the taskbar. When a user clicks
I have created an application that has a toolbar, menubar and content area. I

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.