为了测试我们的部署,我想模拟某些网络事件,如连接丢失、超时、带宽有限等。
我已经在 Google 上搜索过这个,但还没有找到真正适合我需求的东西。ipfw 似乎是我需要的,但我似乎找不到适用于 Ubuntu 的 ipfw 包。另外,我想知道是否有其他选择,甚至更好的工具来完成我的任务。
答案1
您可以使用防火墙模拟这些事情。
修改防火墙规则的 Userland 工具被调用iptables
例如,如果你想模拟 5 秒的连接丢失,你可以这样做
iptables -I INPUT -p tcp -s source.ip.for.which.you.want.to.appear.to.timeout --dpor $port -j DROP ;
sleep 5;
iptables -D INPUT -p tcp -s source.ip.for.which.you.want.to.appear.to.timeout --dpor $port -j DROP ;
答案2
iptables 很棒,但是有些工具在处理此类问题时更为灵敏。
- 滞后工厂(基于网状结构)
- 国家信息和通信技术网. 老而有力。
- 虚拟网络
并且瓦内姆,不是一个独立的应用程序,而是一个定制的路由器发行版。
答案3
来自姊妹网站 Stack Overflow: 在 Linux 上模拟延迟和丢弃的数据包