Receiving an error - 'The requested address is not valid in its context' even though i have enabled the port. RRS feed

  • Question

  • TcpListener server = null;
                    // Set the TcpListener on port 13000.
                    Int32 port = xxxx;
                    IPAddress localAddr = IPAddress.Parse("122...");

                    // TcpListener server = new TcpListener(port);
                    server = new TcpListener(localAddr, port);

                    // Start listening for client requests.

                    // Buffer for reading data
                    Byte[] bytes = new Byte[256];
                    String data = null;

                    // Enter the listening loop.
                    while (true)
                        Console.Write("Waiting for a connection... ");

                        // Perform a blocking call to accept requests.
                        // You could also user server.AcceptSocket() here.
                        TcpClient client = server.AcceptTcpClient();

                        data = null;

                        // Get a stream object for reading and writing
                        NetworkStream stream = client.GetStream();

                        int i;

                        // Loop to receive all the data sent by the client.
                        while ((i = stream.Read(bytes, 0, bytes.Length)) != 0)
                            // Translate data bytes to a ASCII string.
                            data = System.Text.Encoding.ASCII.GetString(bytes, 0, i);
                            Console.WriteLine("Received: {0}", data);

                            // Process the data sent by the client.
                            data = data.ToUpper();

                            byte[] msg = System.Text.Encoding.ASCII.GetBytes(data);

                            // Send back a response.
                            stream.Write(msg, 0, msg.Length);
                            Console.WriteLine("Sent: {0}", data);

                            Console.WriteLine("\nHit enter to continue...");

                        // Shutdown and end connection
                catch (SocketException e)
                    Console.WriteLine("SocketException: {0}", e);
                    // Stop listening for new clients.

    Thursday, December 13, 2018 6:58 AM

All replies

  • Please use the Insert Code Block to paste code. 

    You didn't specify where in your code you're getting this exception. Please post the exception details including stack trace, exception type and message.

    Michael Taylor http://www.michaeltaylorp3.net

    Thursday, December 13, 2018 6:11 PM
  • Did you do any web searching at all for this error?  What it means is that the IP address you specified does not belong to the computer where it is running.  In order to do a TCP server, you not only have to tell it which port to listen to, you have to tell it which network connection to listen to.  That has to be one of the valid IP addresses assigned to this computer, or the special value IPAddress.Any.

    Tim Roberts | Driver MVP Emeritus | Providenza & Boekelheide, Inc.

    Friday, December 14, 2018 1:10 AM
  • Hi _Happy,

    Thank you for posting here.

    For your question, you want to solve the receiving error.

    The cause of this problem could be that your IP address is not the IP address of the machine.

    Best regards,

    Jack J Jun.

    MSDN Community Support
    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    Friday, December 14, 2018 9:40 AM