即时通讯新的Linux环境和任何帮助/反馈将不胜感激。我实际上试图开发一个客户端服务器(MULTICAST)程序,所以,我想测试一个客户端发送信息到不同的服务器(一对多关系)。因此,我想在一台计算机上用不同的IP地址模拟不同的服务器端。模拟不同的PC在不同的IP地址在Linux环境
回答
您是否尝试使用不同的端口?我没有自己尝试,但也许这可以帮助你在中期。
如果你真的在进行组播,你不需要担心物理主机特定的IP,你所需要做的就是确保所有的程序(客户端和服务器)都使用相同的多播组地址。然后他们都应该自动查看对方的流量。
在这种情况下,在同一台也运行服务器的计算机上运行多个客户端没有任何阻碍。
thx为您的快速回复,我想模拟的主要原因是看服务器是否可以接收来自不同来源(客户端)的所有信息。到目前为止,我的程序在一台客户机和一台服务器上正常工作 –
我听起来像你想用不同的IP测试你的代码。您可以在界面上创建IP别名,并在一台计算机上模拟多个IP。
例如,如果eth0是活动的IP接口,比如说192.168.5.11,你可以给eth0:0(eth0别名)分配另一个IP,如下所示。
使用ifconfig eth0的:0 192.168.5.12 netmask255.255.255.0了
使用ifconfig eth0的:1 192.168.5.13 netmask255.255.255.0了
上的IP的一个运行服务器和分发客户端所有的别名
二者必选其一,当你没有足够的硬件如下:
- 组播环路其IP堆栈重定向出站数据包到本地再ceivers。
- 虚拟机。
请注意#1套接字选项的语义根据操作系统而变化;对于#2只有一些虚拟机支持多播,请参阅供应商了解详细信息。
http://msdn.microsoft.com/en-us/library/windows/desktop/ms739161(v=vs.85).aspx
虽然最终你必须用不同的机器上测试由于具体怎么文物主机管理组播组。您可以创建只发送成员资格,这将阻止主机上的其他应用程序。另外考虑一个互联网,小写字母'I',会引入关于群组加入和传播延迟以及应用程序可能需要注意的丢弃的更多人为因素。
您可以借助IP别名为同一台机器创建多个IP。正如刚才提到的。 但是要在一台PC上创建多台服务器,如果要模拟网络中的所有服务器行为,则必须为每台服务器使用不同的端口。
我的意思是对于一个端口多播流量总是去那个和个人电脑中的一些进程将接收数据包,并必须服务于个人电脑中的所有服务器,意味着你只有一个数据包,所有服务器正在本地接收操纵。
但真正的模拟将是你有一台PC上的多个服务器,并且所有的都是从网络接收多播流量,而不是从本地流程。
我的解决方案:您在服务器上保留号码= PC端口号。客户端同时通过所有端口发送组播流量,PC端的所有服务器都将接收来自网络相应端口的组播数据包。
如果我的理解错误,请纠正我。
- 1. 在不同的环境
- 2. Django - 在不同的环境中使用不同的模型
- 3. 我的IP地址有不同的值?
- 4. 听一个不同的IP地址
- 5. 不同的获取IP地址
- 6. 商店不同的IP地址
- 7. 模拟基于Atom的PC环境
- 8. 在不同地区显示不同IP地址的应用程序域
- 9. 虚拟环境在不同的机器上启动不同版本的python
- 10. 在C#中相同LAN上的IP地址到MAC地址的IP地址
- 11. 在C中模拟多个IP地址#
- 12. android模拟器ip地址
- 13. 在不同的行上列出单独的IP地址
- 14. 在运行iMacros脚本的每个循环中使用不同的IP地址
- 15. 在不同的环境中以不同的方式解析DateTime?
- 16. Laravel在不同的开发环境中
- 17. 模拟不同的MAC地址1K Web客户端的源
- 18. 进程对同一主机名使用不同的IP地址
- 19. 同时ping多个不同的ip地址
- 20. 不同地址
- 21. 在网站上查询IP地址 - 显示不同的结果?
- 22. 在Perl中使用不同的出站IP地址
- 23. Apache两个域在两个不同的IP地址
- 24. 如何选择在不同日期发生的IP地址?
- 25. 从Mac到PC - 不同的蟒蛇环境
- 26. ASP.NET在不同环境下的意外和不同行为
- 27. 不同DATESTYLE值相同的环境
- 28. 如何在SAPUI5的不同环境中为2个不同地址使用资源?
- 29. PHP和经典ASP在同一台机器上返回不同的IP地址
- 30. 不同的输出与不同的PC
+1:可以将多个IP地址分配给一个硬件设备,但在我看来,使用多个端口更容易,更好。 – flolo