在c#中侦听端口(不是TCP端口)

时间:2011-11-10 08:29:14

标签: c# sockets voip sip

我的情况:我有一个用于voip的xspeech,当有关于手机的动作时,消息(数据包)被发送到xspeech接口。从这个接口,这些操作的日志被发送到特定的IP地址,这是我的IP地址。这些日志也是从特定端口发送的。

我正在尝试开发一个读取这些日志(而不是文件)的应用程序。我尝试过TCPListener和TCPClient,它们工作但不是我的情况。我以为这些日志不是从TCP端口发送的。这就是问题。

3 个答案:

答案 0 :(得分:1)

SIP默认使用UDP。

这并不像从一个端点获取数据包,记录它们然后将它们发送到真实目的地那么简单。如果你这样做,你会破坏NAT处理之类的东西。

您需要充当完整SIP代理(有状态)或充当B2BUA。

更简单的方法是下载现有的sip-proxy,然后让它登录到文件并读取该文件。

答案 1 :(得分:1)

答案 2 :(得分:0)

如果您正在接收IP地址上的信息,那么我也会认为正在使用TCP / IP。你有没有检查过你的防火墙没有破坏有问题的端口。 我建议您再看一下正在使用的协议(可能是UDP),而是使用Socket类。