这个问题是“如何将 Linux 服务器设置为路由器?”但有一个附加的先决条件:在开始安装 Ubuntu 路由器之前,我想确保能够实现 QoS。这主要是为了使用细粒度的 QoS,我首先想要一个自定义路由器,所以我需要确保这是可行的。
我想使用 Ubuntu Server 计算机作为我的家庭网络路由器(具有 DHCP、DMZ、防火墙规则)。我还希望能够根据以下标准限制上行链路带宽(以提供 QoS):
- 本地 IP 范围
- 本地 MAC 地址
- 本地端口范围
- 远程 IP 范围
- 远程端口范围
- 优先事项
例如,我希望能够限制我的 Google Drive Sync(同步到端口 443 上的 Google IP)的带宽,但前提是其他具有更高优先级的服务需要带宽。
实际上,我希望将 StreamEngine QoS(可以将带宽限制到目标 IP,但在我的 D-Link 路由器上只能使用 0..255 优先级)和 Cisco“临时”路由器(允许明确的带宽限制 - 例如 50KB/s - 但仅限于本地 IP 规则)混合使用。
使用 Ubuntu Server 可以实现这一点吗?如果可以,我应该从哪里开始?
答案1
我认为你想做的所有事情都可以使用 iptables 和 iproute2 的组合来完成。请查看 Iptables 教程和高级路由器操作指南。