【问题标题】:Is it possible to open multiple ports on one program?是否可以在一个程序上打开多个端口?
【发布时间】:2012-05-09 08:24:22
【问题描述】:

我正在编写一个机器人,它可以在一个站点上模拟不同的用户。如果都在同一个端口上,我不知道如何识别哪个虚拟用户应该接收数据包。我想在一个程序上打开多个端口,用谷歌搜索,但我找不到信息。有可能吗?

【问题讨论】:

  • 确实可以。为什么要限制?
  • 您使用什么平台/语言?您需要记住,目的端口与源端口是分开的,通常是自动分配的。
  • @CyprUS 不知道,只是没找到相关信息。
  • @Lazarus C++,我知道目标端口总是相同的:80。另外,我需要一个程序来知道数据包被发送到哪个端口。
  • @VanillaFace 数据包将被发送到目标端口,响应返回到源端口,每个源端口应该不同,这就是你区分每个“会话”的方式。我不确定你在挣扎什么,这很简单。为每个虚拟用户打开一个连接。

标签: sockets bots ports


【解决方案1】:

是的,您可以打开多个套接字,每个套接字侦听不同的端口。

问题是,你需要吗?

如果都在同一个端口上,我将无法确定哪个虚拟用户应该接收数据包。

您可以将其构建到协议中,例如,消息首先包含用户的标识符(固定字节数),然后是消息的大小(例如:使用 int32_t 存储),然后是实际消息。

【讨论】:

  • 现在,正如你所提到的,我已经分析了数据包。看来发送cookie和接收cookie没有改变,所以,我想我的这个问题是没有意义的,除了我发现cookie没有改变。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-11-06
  • 2017-08-10
  • 2012-07-30
  • 1970-01-01
  • 2017-01-09
  • 2011-10-11
  • 2019-12-25
相关资源
最近更新 更多