草庐IT

ip2region

全部标签

c# - 启动从公共(public) IP 到另一个网络上的私有(private)机器的 tcp 连接

我很难找到这方面的帮助资源。我知道如何使用TCPClient类在一个IP/端口/机器与另一个之间创建连接。我的疑问是,当一台机器想要启动到目标机器位于不同网络内的另一台机器的TCP连接时,它是如何工作的。因此目标网络可能有数百台计算机,每台计算机都有自己的私有(private)IP,而网络将有一个公共(public)IP地址。这将使用TCPClient类或任何其他更合适的类。我知道我们可以使用端口,然后在网络内部可以将端口转发到正确的机器,但我一直在寻找一种解决方案,例如LogMeIn使用的一种服务。基本上我想始终使用端口80,然后在需要时启动从服务器到该特定机器或同一网络上其他机器的

asp.net - .NET 中的 Tcp/Ip 套接字连接

对于我当前的项目,我需要通过tcp/ip套接字连接请求XML数据。为此,我使用了TcpClient类:DimclientAsNewTcpClient()client.Connect(server,port)DimstreamAsNetworkStream=client.GetStream()stream.Write(request)stream.Read(buffer,0,buffer.length)//Outputbufferandreturnresults...现在这对于小响应来说工作得很好而且花花公子。但是,当我开始接收更大的数据block时,数据似乎会突发地通过套接字连接推送。

windows - Socket.Bind 和 IP 源路由,具有多个本地网络接口(interface)

我编写了一个在具有两个网络接口(interface)的系统(Win7)上运行的工具,每个接口(interface)都链接到不同的子网,每个子网都有自己的网关,然后链接到两个独立的远程网络(每个网关后都有传出防火墙)。我通过使用Socket.Bind(在执行Connect之前)到每个相关NIC的IP地址,通过两个NIC启动传出TCP连接。第一个NIC工作正常,但对于第二个NIC,我收到SocketException:“Asocketoperationwasattemptedtoanunreachablenetwork”。我最初的理解是,由于套接字绑定(bind)到具体NIC的本地端点,该

c# - 少量数据中的 NamedPipe 与 TCP/IP

你好如果我们向客户端/服务器来回传递少量数据,那么tcp/ip的开销可以忽略不计并且性能与同一台机器上的NamedPipe相同,这是真的吗? 最佳答案 与其说是数据量,不如说是请求数。换句话说,如果您有100,000个连接来传递100字节的数据,那么与您有10个连接(每个连接100K)相比,您将拥有更多的tcp/ip开销。这并不是说通过tcp/ip与命名管道传输数据没有开销。有。但通常我会说,决定使用哪个系统更多地取决于系统的架构,而不是开销。如果要在物理服务器之间传输数据,则必须使用tcp/ip;命名管道不是一个选项。如果您在同一

iphone - 在 iPhone 编程中,如何从具有 XP 操作系统的服务器接收带有 TCP/IP 的图像文件?

我正在用iPhone制作图像接收器。服务器以字节发送图像文件。并且,我尝试将这些字节制作成图像。但是,我无法制作图像。已经,几天过去了……我真的需要你的帮助...这是我使用的源代码。ByterecvBuffer[500];memset(recvBuffer,'\0',sizeof(recvBuffer));[iStreamread:recvBuffermaxLength:sizeof(recvBuffer)-1];NSUIntegerlen=sizeof(recvBuffer);NSData*webdata=[NSDatadataWithBytes:recvBufferlength:l

java - 发送 TCP/IP 消息 AKKA actor

是否可以通过TCP/IP向AKKAActor发送消息?例如,写一个客户端:mySocket=newSocket("theactor",75);os=newDataOutputStream(smtpSocket.getOutputStream());os.writeBytes("HELLO");这可以向AKKAActor发送消息吗?谢谢 最佳答案 详细说明Viktor的回应,最小的例子是importakka.actor._importActorDSL._importjava.net.InetSocketAddressobjectSer

tcp - 在 Erlang 中如何获取客户端的 ip 和端口?

在下面的代码中,服务器正在监听端口2345。在接受来自客户端的连接后,它返回{ok,Socket}start()->{ok,Listen}=gen_tcp:listen(2345,[binary,{packet,4},{reuseaddr,true},{active,true}]),{ok,Socket}=gen_tcp:accept(Listen).我想获取客户端的IP和端口,如何通过socket解析获取? 最佳答案 使用inet:peername/1。文档中函数的描述:peername(Socket)->{ok,{Address

sockets - TCP - 发送和接收 TCP/IP 数据

我有一个客户端和一个服务器通过标准TCP连接相互通信。服务器配置为以一致大小的x字节block发送数据。客户端还配置为以x字节的block接收数据(即,客户端期望调用TCP堆栈以接收x字节将成功,除非与远程端的连接失败)。是否可以将我的基于TCP的协议(protocol)建立在上述假设之上? 最佳答案 似曾相识WillTCPStreamreadblockuntilalldataisreceived.我意识到它看起来有点不同,但本质上它们是非常相似的问题。不要对数据包大小做出假设。 关于s

c++ - Boost-asio 在单个 (TCP) 接受器上监听多个 IP 地址

boostTCP接受器可以通过使用端点构造函数连接起来,端点构造函数只接受端口号作为参数,在这种情况下,它将监听所有IP地址/NIC。是否有可能让接受者收听选定的IP地址?或者我是否必须为我感兴趣的每个IP地址创建一个接受器?查看文档,我找不到任何迹象表明这是可能的。我已经好几年没看过套接字API了,但我猜API并没有直接允许这样做。 最佳答案 有无限制的聆听和有限制的聆听。unbound意味着你听所有的NICs,绑定(bind)-到特定的一个。不可能选择一些NIC,我认为因为同样的情况可以通过为每个NIC提供专门的接受器来实现

c++ - 我应该实现自己的 TCP/IP 套接字超时吗?

我正在开发的软件需要能够使用TCP/IP在短时间内连接到许多服务器。软件在Win32下运行。如果服务器没有响应,我希望能够快速继续列表中的下一个服务器。有时当远程服务器没有响应时,我会在大约20秒后收到连接超时错误。超时通常来得更快。我的问题是这20秒会影响我的软件的性能,我希望我的软件能早点放弃(比如5秒后)。我假设Windows中的TCP/IP堆栈(?)会根据某些参数自动调整超时?在我的应用程序中覆盖此超时并在X秒内无法连接时关闭套接字是否合理?(这可能无关紧要,但该应用程序是使用C++构建的,并使用I/O完成端口进行异步网络通信) 最佳答案