【问题标题】:Simulate multiple IP addresses for testing模拟多个 IP 地址进行测试
【发布时间】:2009-08-20 21:17:02
【问题描述】:

我需要模拟多个通常用于电机控制的嵌入式服务器设备。在现实生活中,网络上可能有多个服务器,我们的桌面软件同时充当所有电机服务器的客户端。我们手头有六台这样的电机控制服务器用于基本测试,但是用真正的硬件测试更大的系统变得越来越昂贵。我想构建一个类似于网络上许多服务器的模拟器来测试我们的客户端软件。

如何构建一个模拟器,使其看起来在同一个端口上有多个 IP 地址,而实际上没有很多 NIC。例如,客户端软件将尝试在端口 1111 上连接到服务器 192.168.10.1 到 192.168.10.50。模拟器将接受所有这些连接并运行模拟,就像它正在移动物理电机一样,并在这些套接字连接上发回模拟数据.

我可以使用路由器将所有这些地址映射到单个测试服务器,或者理想情况下,有没有办法使用 localhost 来“欺骗”这些 IP 地址?客户端软件是用 .Net 编写的,但也欢迎 Python 的想法。

【问题讨论】:

    标签: .net python networking sockets


    【解决方案1】:

    您应该设置一个虚拟网络适配器。它们被称为 TAP/TUN 设备。如果您使用的是 windows,您可以轻松地设置一些虚拟地址,如下所示:

    http://www.ntkernel.com/w&p.php?id=32

    祝你好运!

    【讨论】:

      【解决方案2】:

      A.考虑使用 Bonjour (zeroconf) 进行服务发现

      B.您可以为同一个 NIC 分配 1 个或多个 IP 地址:

      在 XP 上,开始 -> 控制面板 -> 网络连接,然后选择 NIC 上的属性(通常是“本地连接”)。

      向下滚动到 Internet 协议 (TCP/IP),选择它并单击 [属性]。

      如果您使用的是 DHCP,则需要从您的 IT 部门获取一个静态的基础 IP。 否则,单击 [高级] 并在“IP 地址”下单击 [添加..] 输入您要添加的其他 IP 的 IP 信息。

      对每个额外的 IP 地址重复。

      C.考虑使用 VMWare,因为您可以在单个逻辑“计算机”网络中配置多个系统和虚拟 IP。

      -- 天空

      【讨论】:

      • 为单个 NIC 设置多个 IP 听起来很完美。我会试一试。
      【解决方案3】:

      通常您只需在 0.0.0.0 上收听。这是所有个 IP 地址的别名。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-03-07
        • 2015-07-27
        • 2012-08-10
        • 1970-01-01
        • 2012-11-06
        • 1970-01-01
        相关资源
        最近更新 更多