寻找比IPFW更好的解决scheme来减缓互联网连接

我需要减慢(模拟糟糕的)互联网连接,我发现一些文件,它通过“ipfwpipe道”命令实现,这是在最新的MAC操作系统版本,ipfw被弃用(和删除)…

我想知道是否有任何替代ipfw API? 有谁知道最新的networking链接调节器如何实现它?

以前的原来的方式,使放缓互联网连接:

sudo ipfw pipe 1 config bw 56Kbit/s delay 200 plr 0.2 

并清除pipe道:

 sudo ipfw delete 1 

谢谢。

我对Mac OS不是很了解(我自己使用Linux),但是我会给出这个答案。

正如你所说,一堆挖掘确定ipfw似乎不可用。

我也无法从命令行find使用Network Link Conditioner的方法。 一切都应该从命令行使用,所以这是愚蠢的。

一个解决办法是尝试从AppleScript中访问NLC。 以下内容将帮助您开始切换NLC:

 property thePane : "com.apple.Network-Link-Conditioner" tell application "System Preferences" activate set the current pane to pane id thePane --delay 2 end tell --- tell application "System Events" tell application process "System Preferences" try click ((checkboxes of window "Network Link Conditioner") whose description is "enable switch") on error click ((checkboxes of window "Network Link Conditioner") whose description is "enable switch") end try end tell end tell 

我认为你可以用osascript <SCRIPT>从terminal运行一个脚本。

作为替代scheme, Charles Proxy是一个付费使用程序,只要你能说服你正在testing的软件连接到代理的端口,而不是直接连接到互联网,就可以用来执行限制。 也许有地方有免费的代理解决scheme吗?

也许乌贼会在这方面工作。 鱿鱼人似乎是一个容易的方式来安装它的Mac。 它看起来像DelayPools和/或客户端带宽限制可能是有用的模拟低速连接,但我找不到人们使用它们的证据。

我发现了几个可能工作的解决scheme。 他们来自一些旧线程,但他们可能会帮助:

如何在Mac上模拟慢速互联网连接

苹果已经做出了一个非常方便的官方工具,以放慢您的Mac上的networking连接,用于testing目的。

Network Link Conditioner首选项是从Xcode(Lion和更高版本的OS)中免费下载的。 另外,iOS在Xcode和iOS 6或更高版本中具有类似的function。

如何在iPad上模拟一个糟糕的Wi-Fi连接?

有几种方法可以做到这一点,这取决于你的情况:

  1. 远离路由器。 虽然这看起来有点显而易见,但是我意识到在testing/debugging时(例如,如果您在台式计算机上工作),并不总是可行的。

  2. 将铝箔放在路由器和/或天线周围。 这将通过创build一个临时的法拉第笼来(部分地)阻止部分或全部无线电信号。 您得到的结果将取决于路由器信号的强度,距离路由器的距离以及其他环境因素。

  3. 将路由器的无线信号功率设置为较低的设置。 这样做的方法是不同的每个路由器,所以你将不得不看看用户指南的指示如何做到这一点。

减慢互联网的iOS模拟器

您可以通过在设备上进行testing来设置networking以降低特性。 进入设置 – >开发者设置 – >networking链接调节器 – >启用。 这是针对运行iOS 6的iPhone / iPad

我不知道最后一个你还能做什么。

过去我使用了很多方法来减慢networking连接,其中包括:

  • 执行一些大规模Linux ISO文件的并行下载;
  • 实际上拉出了以太网电缆(实际上,我实际上玩弄了构build一个button式设备的想法,该设备可以放置在两根cat5电缆之间,并且不需要物理地断开整个电缆)。
  • 使用ifconfig eth0 down ; sleep 1 ; ifconfig eth0 up ifconfig eth0 down ; sleep 1 ; ifconfig eth0 up ifconfig eth0 down ; sleep 1 ; ifconfig eth0 up

希望这些方法中的一个或多个将有所帮助。

如果您正在进行testing/分析工作,希望减慢networking连接速度,则可select一种方法来获取可能造成networking延迟/噪音的特定设备。

例如,Apposite Tech的mini2 WAN仿真器允许您更改带宽和数据包丢失的值。 你也可以使用类似http://wanem.sourceforge.net/的方式来推出自己的设备&#x3002; 这只取决于你的需求,时间和预算。