ZEVENET ADC 中的高级路由系统

张贴 Zevenet | 23年2021月XNUMX日

详情

路由 是一种在网络中为流量选择路径的机制,其中在源和目的地分析数据包并由特定的数据包转发机制管理,或者相同的,从一个网络接口(入口)到另一个网络接口的管理(出口)。

路由实现可以从不同的设备完成,比如交换机、防火墙、服务器、负载平衡器,实际上任何能够接收/发送数据包的设备,为此,ZEVENET 做了一个高级路由实现,超级高效和有效的添加选项被配置为如果需要,可以定制,但是一个简单的路由系统是如何工作的,ZEVENET 路由如何实现它以及如何使用高级功能?

基本原理

任何简单的路由系统都包含一个简单的路由表,该表负责根据数据包检查流量规则,例如源 IP 来自数据包的位置或数据包的目的地 IP 和目的地。 最后,如果数据包不符合任何条件,那么简单路由表会将数据包转发到网关,数据包将继续该路径。

但是如果需要更高级的行为会发生什么? 例如,如何根据源地址将数据包发送到不同的网关,甚至基于复杂的算法或基于标记数据包系统将到达同一网络的数据包转发,所以这就是ZEVENET实现的地方以下列方式工作。

当接收到一个数据包时,它会根据规则表进行检查,该规则表负责根据数据包中的信息将数据包发送到不同的路由表,一旦向路由表做出转发决定,则检查数据包根据给定的路由表,最终发送到路由表中指示的下一跳。

探索一个简单的路由配置

下图解释了一个简单的路由系统如何决定数据包转发:

数据包通过 eth0 进入设备,路由表检查数据包目的地,现在数据包将被发送到给定的接口进行出口。 这种工作方式简单而有用。

探索 ZEVENET ADC 中的高级路由配置

正如我们已经指出的,ZEVENET ADC 设备包括一个高级路由系统,其中首先对数据包进行“规则化”,然后再决定转发到哪个表:

ZEVENET ADC的路由模块的设计思路如下:

每个网络接口(NIC、VLAN 或绑定)管理自己的路由表和网关。
对于传入流量(从客户端到负载均衡器)和传出流量(从负载均衡器到后端),到达 VIP 的流量将由相同的路由表管理
每个到达农场的数据包都被标记,因此在将数据包重定向到下一跳时会考虑此标记。
使用最少数量的静态路由来保持路由系统简单,因为静态路由会增加添加更多接口。
如果 ADC 需要连接到外部系统、导航代理、DNS、修补程序审查等,将使用专用表(表主)。
负载平衡流量将使用与主表不同的表,以分离和隔离不同类型的流量。

以下几行描述了一个真实场景,一个 ZEVENET ADC 配置了两个 NIC(eth0 和 eth1)。

列出 NIC eth0 的路由表:

ip route list table table_eth0

eth0 IP 192.168.100.10
eth0 网络掩码 255.255.255.0
eth0 网关 192.168.100.5

列出 NIC eth1 的路由表:

ip route list table table_eth1

eth1 IP 192.168.101.10
eth1 网络掩码 255.255.255.0
eth1 网关 192.168.101.5
贵宾1 192.168.101.11

表 main 的默认网关是 192.168.100.5.

可以使用以下命令显示此信息:

ip route list table main

客户端到达虚拟 IP 192.168.101.11 在端口的农场 L4XNAT 80,此场已配置为针对两个后端服务器进行负载平衡流量 192.168.200.20192.168.200.21.

LSLB 模块(本地服务负载平衡)内的 L4XNAT 群为每个群中的每个后端提供唯一的标记标识符,以便数据包一到达 VIP 192.168.101.11 在虚拟端口 80 在eth1中配置负载均衡模块为数据包分配一个标记只是为了识别新的目的地,在接下来的步骤中,规则系统检查数据包中的标记,根据这个标记路由系统知道数据包到哪个路由表需要发送。

例如,l4xnat 农场用值标记一个数据包 201, 标识后端 192.200.20 在虚拟 IP 中配置的场中 192.168.200.20 和虚拟端口 80,现在规则表能够将数据包转发到相应的路由表:

可以使用以下命令列出路由规则:

ip rule list

如ID 25998所示,所有标记为201的流量都会转发到table_eth1表中,查看eth1表的内容:

现在数据包尝试到达后端 192.168.200.20,查表,这个目的IP不是直接访问的,所以会使用默认网关,将数据包转发到 192.168.101.5 作为下一跳。

通过这种机制,系统首先标记数据包以识别目的地,然后高级路由系统能够以正确的方式转发数据包以确认它将到达正确的目的地。

此外,可以根据客户端要求配置和修改路由系统,如果您想更改规则系统,请参阅 Web GUI 部分 网络 > 路由 > 规则 如果您想更改某些路由表,请参阅 Web GUI 部分 网络 > 路由 > 表.

分享到:

根据GNU自由文档许可条款的文档。

本文是否有帮助?

相关文章