C#.net Sockets,服务端怎么知道客户端的IP和端口?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#.net Sockets,服务端怎么知道客户端的IP和端口?相关的知识,希望对你有一定的参考价值。
连上了怎么获得客户端的公网IP和端口。存在哪个值里还是什么,就是不知道才问的嘛
参考技术A socket有一个LocalEndPoint获取本地的ip和端口号RemoteEndPoint来获取远程客户端的ip和端口号 参考技术B 是客户端连接服务器
//客户端代码
Socket sock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
int port = 8000;
IPAddress myIP = IPAddress.Parse("服务器IP");
IPEndPoint myClient = new IPEndPoint(myIP, port);
sock.Connect(myClient);//连接服务器
//服务器代码
Socket ServerSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
string ip = "服务器IP";
IPAddress ipAddr = IPAddress.Parse(ip);
int port = 8000;
IPEndPoint ippoint = new IPEndPoint(ipAddr, port);
ServerSocket.Bind(ippoint);//绑定
ServerSocket.Listen(10);//监听 参考技术C 晕,连接上了就可以获得客户端的公网IP和端口。 参考技术D 用 IPEndPoint
PowerTCP Sockets for .NET 6.1.5 Crack
PowerTCP Sockets for .NET
PowerTCP Sockets for .NET 包含易于使用的 TCP 和 UDP 组件,可帮助您创建 Internet 客户端应用程序,只需几行代码和方便的事件。Ping 组件使用 ICMP、UDP 和 TCP 启用服务器验证,而跟踪组件执行异步跟踪路由以实现快速响应。DNS 组件不依赖于操作系统服务,允许使用任何 DNS 服务器。高级分段流技术允许接收最多特定分隔符或固定长度的数据,非常适合构建基于 TCP 的自定义协议
特征:
- 自动接收技术通过管理所有传入数据来减少代码
- 使用 TCP 组件进行动态数据解析和事件通知
- 支持 SOCKS4 和 SOCKS5 代理
- 服务器性能高,每个连接都接收一个单独的线程(经测试每秒接受超过 75 个连接)
- 设计用于桌面、Web 服务或 ASP.NET
- 独特的异步UDP发送/接收功能增强了Microsoft .NET Framework中提供的功能
- EnhancedStream 和 PipeStream 类允许开发人员创建自己强大的 Stream。
- 使用 Dns 组件的用户定义的 DNS 服务器进行查找、反向地址查找和邮件地址查找(来自 MX 记录)
- Ping 组件允许使用 ICMP、UDP 和 TCP 协议进行主机验证
- 跟踪支持异步回显,可实现前所未有的跟踪路由性能
- 每个组件都经过体系结构以利用 .NET 面向对象的功能
- 每个组件都具有多线程异步功能
- 每个组件都允许在同步使用期间处理用户界面事件
- 每个组件在关键成员上都是线程安全的
- 支持国际字符集
- 调试已从运行时测试扩展到每个组件中的设计时编辑器,以允许在不编译的情况下测试连接。编辑器中设置的属性直接记录在代码中,实时反馈窗口提供有关结果的详细信息
以上是关于C#.net Sockets,服务端怎么知道客户端的IP和端口?的主要内容,如果未能解决你的问题,请参考以下文章
JAVA中Sockets长连接时使用read()阻塞的问题!急救!