我有两台机器,如下图:
To internet<---->PC_A<----->PC_B
PC_A 有两个接口(一个连接到互联网,另一个连接到 PC_B)。PC_B 必须经过 PC_A 才能连接到 Internet。我在 PC_A 上运行 Dummynet。PC_A 在面向 Internet 的接口上具有 IP 192.168.1.1,在面向 PC_B 的接口上具有 IP 10.42.0.1。PC_B bas 10.42.0.2 在其接口上配置。
我在 Dummynet 中有两个管道,配置如下:
ipfw add pipe 1 ip from 192.168.1.1 to any
ipfw add pipe 2 ip from any to 192.168.1.1
ipfw pipe 1 config bw 5000Kb/s
ipfw pipe 2 config bw 5000Kb/s
如果我在两台机器上运行带宽测试(比如 speedtest.net),PC_A 的带宽正是我在 Dummynet 中指定的,而 PC_B 获得了无限带宽。我不明白这是怎么可能的,因为 PC_B 的数据包必须通过它的网关,它会受到 Dummynet 规则的约束。
有人可以指点我的建议。
谢谢。