C# Socket编程的地址问题
我现在想写一个像飞秋一样的聊天工具,遇到一个问题,服务器端和客户端在一个实例上,,但是这个服务器端的套接字要绑定一个终结点,这个终结点怎么定义不明白,客户端要去连接服务器的终结点,这个终结点怎么定义也不明白,主要是IP地址不知道用哪个,端口没有什么问题,请问哪位高手可以请一下啊?
我现在想写一个像飞秋一样的聊天工具,遇到一个问题,服务器端和客户端在一个实例上,,但是这个服务器端的套接字要绑定一个终结点,这个终结点怎么定义不明白,客户端要去连接服务器的终结点,这个终结点怎么定义也不明白,主要是IP地址不知道用哪个,端口没有什么问题,请问哪位高手可以请一下啊?
答案:自己的IP地址 如果是直接入网的话(无网关 不是学校公司这种局域网入网的) 就是你上百度贴吧匿名发帖的那个IP 其他方法也有 但是这个最直观
还有 SOCKET不是一个端口性质的东西 而是更像一个数据包这种样子的东西 这点很容易混淆
比如说 如果是服务器监听客户端的话 :
服务器不需要知道客户端的IP 只需要打开自己这边的一个端口(PORT) 然后建立一个SOCKET实例绑定到这个端口 然后就成功的监听了 运行后所有发送到这个端口的BYTE流都可以通过SOCKET.BEGINACCEPT方法来接收
而客户端却不但要知道服务器的IP 还要知道服务器用来监听的那个端口(PORT) 这样就形成了一个服务器ENDPOINT(IP+PORT) 然后自己生成一个SOCKET实例 再连接那个服务器ENDPOINT 再通过这个SOCKET实例传输自己的BYTE流
编IM还是很复杂的 尤其是线程和异步调用的问题 SOCKET只是第一步 和网页的那种伪IM完全不一样的
还有什么问题的话可以HI我 不过我也是菜鸟 只能尽力而为了在问问里你都得不到答案的服务端 绑定监听的本地端口,
上一个:C#编程高手来数据库达人也可以,会编程的都可以主要要个思路
下一个:用C#编程实现,产生一个1到100之间的随机数的平方以及平方根值