跟 listen 一样,connect 前,也先 bind 一下。
如果先bind 的话,那端口就固定了啊。端口不是连到服务端的时候,随机分配的吗?
@艾紫霁: 想什么.客户端的端口是随机的,但是服务端的端口是固定.
@吴瑞祥: 是啊,那怎么在发送给服务端的时候,固定ip,且端口是服务端随机分配的呢?
@艾紫霁: bind 可以指定本地的 ip 和 port,跟服务器没关系。
@Launcher: 天呐,我被你们弄晕了。求代码。
@Launcher:
我固定的ip,和端口。发送不过去。
IPEndPoint ipEnd = new IPEndPoint(IPAddress.Parse("192.168.1.10"), 40000);
Socket clientSk = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
clientSk.Bind(ipEnd);
clientSk.Connect(new IPEndPoint(IPAddress.Parse(SendIp), SendPort));
byte[] datas = Encoding.GetEncoding("GBK").GetBytes(msg);
int bytesSent = clientSk.Send(datas);
@艾紫霁: 看错误代码
@Launcher: 可以了~谢谢~