假设我们的IP 10.0.0.1(本地IP:192.168.0.1)的PC在端口1001上与已在端口1011上具有IP 11.0.0.1的服务器建立了连接。当我们使用Netstat命令时,我们可以看到此连接:
TCP 192.168.0.1:1001 11.0.0.1:1011 ESTABLISHED
此连接是由另一个程序完成的。是否可以以编程方式访问此现有套接字并通过它发送数据?我必须使用哪种语言(最好是Java或.NET)并不重要。
期望的例子:
Socket s = Socket.getEstablishedLocalConnection("11.0.0.1", 1001, 1011);
s.sendUrgentData(0);
答案 0 :(得分:0)
您使用的操作系统是什么?我将从Java / .Net评论中假设Windows。
这在典型的类UNIX操作系统(Linux,Mac OS X,iOS等)中是不可能的。教科书解决方案是打开一个进程并“拥有并管理”套接字。然后它可以复用来自多个其他进程的输出。那些其他进程反过来必须通过一些商定的IPC机制将其输出提供给套接字控制进程:另一个套接字连接,unix域套接字,unix FIFO,SysV IPC,写入共享内存,写入共享文件等。