我正在尝试重新创建论文中使用的设置(这准确地说是一个)。它在交换机后面有两台服务器,交换机还连接了一个客户端。
我使用三台 FreeBSD VM - 一台用于交换机,两台用于路由器。客户端是我的Linux主机。我已经达到了交换机虚拟机可以路由进出服务器和主机的流量的程度。该论文随后描述了以下步骤:
- 虚拟 NIC 是在两台服务器上使用 IP 别名创建的。它们被分配相同的 IP 地址。
- 两台服务器还与多播以太网地址相关联。
- 在客户端上创建一个静态 ARP 条目,将 IP 地址映射到以太网地址。
我已经完成了第一个步骤,并且很确定我可以毫不费力地完成第三个步骤,但我正在为中间的步骤而苦苦挣扎。我找不到很多与多播设置相关的资源,而关于多播以太网地址的资源则更少。有人有这方面的经验吗?任何帮助将不胜感激,谢谢。
最终结果是两台服务器同时接收相同的 TCP 流量 - 如果有不同的方法来实现这一点,我也很高兴听到。
答案1
我无法访问您引用的论文,但根据您想要实现的目标,您可以:
1) 使用 ifconfig 将以太网卡的“链接”(MAC) 地址更改为多播地址。请注意,这将替换您现有的 MAC 地址(至少在重新启动之前)。
2)你可以通过使用 ng_eiface 和一些摆弄来添加第二个 MAC 地址。
3) 您可以编写一个程序来加入多播组,以便以太网卡能够侦听具有您感兴趣的多播地址的数据包。
我不是 100% 确定你想要实现什么,但也许其中之一就是你想要的,或者会引导你走向正确的方向。