c# - 使用套接字的简单 C# 客户端出错

标签 c# sockets networking

我正在尝试用 C# 创建一个非常简单的客户端/服务器,基本上我现在想做的就是让客户端连接到服务器,这就是我遇到错误的地方。我的服务器启动正常,但是当我尝试启动我的客户端时,出现此错误:

The requested address is not valid in this context
  at System.Net.Sockets.Socket.Connect (System.Net.EndPoint remoteEP) [0x00000] in <filename unknown>:0
  at Client.Client.Main (System.String[] args) [0x00000] in <filename unknown>:0

我现在拥有的基本客户端如下

        try
        {
            IPAddress ipAddress = IPAddress.Parse("0.0.0.0");
            IPEndPoint remoteEP = new IPEndPoint(ipAddress, 8001);

            Socket sender = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

            try
            {
                sender.Connect(remoteEP);                    

                Console.WriteLine("Connected to: " + remoteEP);

                byte[] msg = Encoding.ASCII.GetBytes("Testing");

                sender.Send(msg);


                sender.Shutdown(SocketShutdown.Both);
                sender.Close();

            }

            catch (Exception e)
            {
                Console.WriteLine(e.Message + "\n" + e.StackTrace);
            }
        }
        catch (Exception e)
        {
            Console.WriteLine(e.Message + "\n" + e.StackTrace);
        }

最佳答案

这不是一个有效的 IP 地址。对于本地主机(您自己的机器),这就是您想要的

   IPAddress ipAddress = IPAddress.Parse("127.0.0.1");

关于c# - 使用套接字的简单 C# 客户端出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15307263/

相关文章:

c# - 计算 VS_KEY 容器名称

c# - 在 "object not set"错误之前捕获不存在的 XML 节点

客户端无法连接到服务器

Java 安卓套接字

c# - 延迟模板字符串插值

c# - 如何替换 C# 中的特定单词?

与 Web 服务器通信的 Python 应用程序?想法?

linux - 当目标 IP 不是分配给接口(interface)的 IP 时,在 TUN/TAP 接口(interface)上接收 IP 数据包

java - 如何用 Java 设置客户端/服务器?

networking - 获取运行docker引擎的主机的IP地址