【问题标题】:Get the dynamic alloccated port of a IPEndPoint获取 IPEndPoint 的动态分配端口
【发布时间】:2016-07-05 09:53:16
【问题描述】:

当您使用 0 作为端口创建 IPEndPoint 时,如何获得动态分配的端口:

var endpoint = new IPEndPoint(Dns.GetHostAddresses(localhost).FirstOrDefault(), 0);

如果我查看 endpoint.Port,它是 0(任意),即使底层 Socket 必须已经有一个指定的端口?

【问题讨论】:

  • 您可以获取所有信息:tcpClient.Client.LocalEndPoint 或 tcpClient.Client.RemoteEndPoint 和 tcpListener.LocalEndPoint
  • 由于我使用端点进行 SIP 流量,我需要同时支持 UDP 和 TCP,所以在这种情况下我需要使用 udpclient 或 tcpclient。我猜一个 udpclient 有同样的可能性?如果根本无法从 IPEndPoint 获取动态端口,这可能是一个解决方案。
  • 是的,udp 和 tcp 都可以使用 Socket 类。这个“RemoteEndPoint”和“LocalEndPoint”来自 Socket 类。

标签: c# .net sockets endpoint


【解决方案1】:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-10
    • 1970-01-01
    相关资源
    最近更新 更多