草庐IT

c# - 如何获取本地网络上运行我的程序的主机的 IP 地址

我构建了一个点对点C#视频session应用程序,它使用特定的TCP端口(17500)进行音频通信。目前,在我的应用程序界面上,我输入了另一个打开了程序的IP地址,以便进行通信。我想做的是自动查找IP地址。所以,我认为实现此目的的最佳方法是获取使用相同TCP端口号17500的本地IP地址。我该怎么做?还是有任何其他方法可以使用相同的应用程序获取IP地址? 最佳答案 如评论中所述,您需要某种对等发现协议(protocol)。由于许多多媒体设备、路由器等使用基于多播的发现协议(protocol),例如SSDP,我创建了一个类似的发现服务

javascript - Node.js 单击按钮并使用 TCP/IP 协议(protocol)发送内容

我是Node的新手。我正在尝试制作用户可以单击按钮的应用程序,然后某些内容将通过TCP发送到客户端。这是我的ECHO服务器(来自nodejs.org的示例)constnet=require('net');varHOST='0.0.0.0'varPORT=6969;varserver=net.createServer();server.listen(PORT,HOST);console.log('Serverlisteningon'+server.remoteAddress+':'+server.remotePort);server.on('connection',function(so

Java - TCP/IP - 服务器无法将消息发送回客户端?

我想将一个对象从我的客户端发送到我的本地主机服务器以添加到数据库,并且无论该对象是否成功发送都将结果发回。对象已成功发送,但我的服务器没有将结果发送回客户端,导致我的客户端框架因等待服务器响应而挂起。我不知道我的代码有什么问题。你能告诉我一些解决这个问题的方法吗?这是发送结果的函数:publicvoidsendResult(Stringresult){try{SocketclientSocket=myServer.accept();System.out.println("Connectedtoclient");ObjectOutputStreamos=newObjectOutputSt

c# - Winsock tcp/ip 套接字监听但连接被拒绝,竞争条件?

这涉及到两个自动单元测试,每个单元测试都启动一个tcp/ip服务器,创建一个非阻塞套接字,然后在select()上循环bind()s和listen(s)为连接和下载一些客户端数据。问题是它们在单独运行时可以完美运行,但作为测试套件运行时,第二个测试客户端将无法连接WSACONNREFUSED...除非他们之间有几秒的Thread.Sleep()??!!有趣的是,每1秒有一次重试循环,用于在任何失败后进行连接。所以第二个测试循环一段时间,直到10分钟后超时。在此期间,netstat-na显示服务器套接字处于LISTEN状态的正确端口号。那么如果是listen状态呢?为什么它不接受连接?在

c# - 如何使用 .NET 2.0 学习 TCP/IP 和套接字编程?

我在哪里可以找到学习如何在.NET/C#2.0中使用TCP/IP的良好资源和示例?关于从哪里开始的任何建议?我是套接字编程的新手。 最佳答案 新的MSDN站点非常好,将不同语言的示例清晰地分开了。无论如何,您可能会从TcpClient开始和TcpListener.上周我第一次使用.NET套接字库,并且能够非常非常快速地实现TCP命令解释器。 关于c#-如何使用.NET2.0学习TCP/IP和套接字编程?,我们在StackOverflow上找到一个类似的问题:

http - 通过 TCP/IP 端口不断读取/写入数据。哪一个?

不幸的是我不太了解网络。我正在编写一个有两个版本的程序。服务器版本和客户端版本。假设客户端版本安装在20台通过以太网连接到服务器的PC上。客户端版本需要不断地从服务器获取一些数据。数据是串行的。我想知道一种方法来广播每秒更新的数据,并使网络中的所有其他PC都可以使用它。我可以为此使用HTTP端口吗?比如将数据写入HTML页面或其他内容?或者是否有更好的端口或方法来执行此操作?任何想法将不胜感激。 最佳答案 这听起来像是一个非常简单的TCP套接字应用程序。服务器将设置为“监听”特定端口(您选择端口号,比如12345),每个客户端将在该

windows - 如果不调用 recv,来自 TCP/IP 的缓冲区在哪里?

假设我有一个监听端口X的服务器。多个客户端连接到服务器并通过send命令发送数据。如果服务器没有有recv例程来“刷新”缓冲区,会发生什么情况?缓冲区是驻留在您自己的进程中还是在Windows中?是否还可以“DDos”呢? 最佳答案 WhathappensiftheserverdoesNOThavearecvroutineto"flush"thebuffer?对应于该套接字的接收缓冲区将被填满。当发生这种情况时,UDP将默默地丢弃传入的数据报。TCP将丢弃传入的数据报并且不确认它们,从而触发拥塞控制(在Reno/XP下将窗口大小减半

Delphi 2007,Indy 10 - 单向传输数据 block 的最简单的 TCP/IP 设置是什么

我有一个应用程序(“服务器”)每秒更新内存中的数据block-大约100k字节。在同一网络上的其他工作站上运行着1到4个“客户端”应用程序的其他实例,这些实例需要每秒读取相同的100k图像。到目前为止,这是通过将图像写入服务器上的文件并让客户端通过网络从该文件中读取来实现的。这多年来一直没有问题,但最近(恰逢转向基于Windows8的硬件)它出现了一个问题,除了一个节点之外,所有节点都无法访问该文件。退出在此节点上运行的客户端应用程序会释放文件,然后所有人都可以再次访问它。对于这次锁定的原因,我仍然感到困惑,但我想知道它是否可能是讨论的机制here,其中文件由于网络故障而未关闭。我认为

c# - 为什么我的 python TCP 服务器需要绑定(bind)到 0.0.0.0 而不是本地主机或其 IP 地址?

我正在制作一个PythonTCP服务器和一个C#客户端,我让它工作了,但我不明白为什么它在工作,我希望有人能向我解释什么我迷路了。我正在尝试从我自己的网络内进行连接,因此不涉及防火墙。在我的python脚本中,如果我绑定(bind)到127.0.0.1或localhost我无法从我的C#脚本连接到它,所以我想也许它需要是DHCP服务器给它的本地IP地址,所以我尝试绑定(bind)到192.168.1.74(本地IP地址)。这仍然不起作用,但是如果我使用0.0.0.0作为我绑定(bind)的端口,我可以毫无问题地连接。Python服务器代码:defstartserver():global

c# - Amazon EC2 上的实时 TCP/IP 套接字服务器

我打算将我的游戏服务器迁移到AmazonEC2。现在,实际服务器在Windows专用服务器上运行在.NetFramework3.5上。由于这是一个个人副项目,拥有一个完全专用的服务器非常昂贵,因此我想将它移动到云端(AmazonEC2或WindowsAzure)。有人做过这样的事吗?有可能这样做吗?如果是的话,你能不能给我提供一些关于这个主题的文档,因为我只能找到通过http设置web服务器的文档。服务器绑定(bind)并监听2个不同端口上的2个TCP套接字(nodelay选项)。非常感谢!凯尔 最佳答案 使用EC2,您可以完全控制