简介
本文档介绍Acano或Cisco Meeting Server(CMS)服务器上的IP路由规则。Acano或CMS服务器可以配置多个接口,每个接口都有自己的默认网关。
先决条件
要求
Cisco 建议您了解以下主题:
- CMS组件:
- WebBridge(WB)
- 在NAT(TURN)服务器周围使用中继的穿越
- CallBridge(CB)
- 基本IP路由
使用的组件
本文档中的信息基于版本2.3.x的Cisco Meeting Server。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
背景信息
此处的唯一限制是,4端口交换机上的不同接口需要位于不同的子网中,否则,在设置时可能会出现路由问题。除此之外,具有ADMIN接口的硬件X服务器允许此ADMIN接口与其他接口(A/B/C/D)位于同一子网中,如CMS安装指南中所述,如本说明所示。
注意:Cisco Meeting Server的任意两个接口不得放入同一子网。唯一的例外是,物理Acano X系列服务器的ADMIN接口可以与其他接口(A到D)之一位于同一子网,并且可能是常见部署。
例如,当您在TURN服务器组件上接收绑定请求时,您需要了解路由逻辑,以验证响应从哪个接口发出。
哪些IP路由规则适用于Acano/CMS服务器?
IP路由逻辑取决于连接本质上是用户数据报协议(UDP)还是传输控制协议(TCP)。
对于TCP,无论是新连接还是入站连接的应答,您都可以使用图中的流程图找出适用于您的IP路由逻辑。
入站TCP连接应答
Acano/CMS服务器在收到请求的接口本身上(因为已经有TCP连接)对入站TCP连接作出应答。
出站TCP连接或任何出站UDP数据包
对于这两种情况,遵循以下IP路由规则(以及入站TCP连接应答的第一步)。
注意:该逻辑适用于新的出站UDP数据包的创建,或用于响应收到的数据包而发出的数据包。

如何显示所有IP路由表(每个接口)?
在主板管理处理器(MMP)上使用ipv4 <interface>命令。
通过这种方式,您可以看到已配置的IP地址和前缀长度,以及为此接口设置的所有静态路由,如本图所示。
例如,此处将到8.8.8.8/32和8.8.4.4/32的路由设置为在此特定接口(a)上显式外出:

您还可以看到在live.json文件中为映射到eth4的相应接口(A)添加的路由。
"ipv4": {
"module": {
"interfaces": {
"eth4": {
"dhcp": "false",
"enabled": "true",
"default": "true",
"macaddress": "00:50:56:99:5A:5B",
"address": "10.48.54.160",
"prefixlen": "24",
"gateway": "10.48.54.200",
"routes": {
"8=8=8=8-32": {
"address": "8.8.8.8",
"prefixlen": "32"
},
"8=8=4=4-32": {
"address": "8.8.4.4",
"prefixlen": "32"
}
}
注意:在live.json文件中,接口A-D(从MMP)映射到eth4-eth1,因此接口A映射到eth4,接口D映射到eth1。另一代码段是X系列服务器的代码段,您可以在ipv4 下的mmp部分看到ADMIN接口,而不是模块显示给其他接口。
"ipv4": {
"mmp": {
"interfaces": {
"eth0": {
"macaddress": "44:4A:65:00:13:00",
"dhcp": "false",
"enabled": "true",
"default": "true",
"address": "10.48.79.72",
"prefixlen": "24",
"gateway": "10.48.79.200"
}
要向特定接口添加或删除静态路由,可以使用命令ipv4 <interface> route(add | del)<address>/<prefix length>。
如何检查和更改默认接口?
默认情况下,如果以空配置开头,则接口A为默认接口。
可以使用默认参数在接口上验证此项,如此图像上突出显示的所示:
这是MMP上的ipv4 <interface>命令输出。

注意:如果此值设置为true,则此接口是像在映像中一样的默认接口。
您还可以从live.json中看到接口A(映射到eth4)是否设置为默认接口。
"ipv4": {
"module": {
"interfaces": {
"eth4": {
"dhcp": "false",
"enabled": "true",
"default": "true",
"macaddress": "00:50:56:99:5A:5B",
"address": "10.48.54.160",
"prefixlen": "24",
"gateway": "10.48.54.200",
"routes": {
"8=8=8=8-32": {
"address": "8.8.8.8",
"prefixlen": "32"
},
"8=8=4=4-32": {
"address": "8.8.4.4",
"prefixlen": "32"
要更改默认接口,可以使用命令ipv4 <interface> default,但请确保您拥有适当的静态路由以适应此更改,否则路由会受到影响。
示例:

该映像表示具有一个核心和一个边缘服务器的单个拆分服务器设置的示例,这些服务器具有以下要求:
- 核心服务器只能连接到DMZ接口(A),而不能连接到公共接口(C & D)。
- TURN服务器组件需要像WebBridge一样侦听443(因此需要不同的接口以避免端口冲突)。
在本示例中,没有设置特殊路由,也没有指定不同的默认接口,因此它默认为边缘服务器上的接口A。
情况:
- WebRTC客户端可以登录,但呼叫失败
- 从CB绑定并分配请求到TURN服务器确实会获得成功响应
- 从外部WebRTC客户端到TURN服务器的绑定和分配请求到达,但未获得成功响应
说明:
- 由于WB和负载均衡器(LB)仅响应入站TCP连接,而不自行启动出站连接,因此此路由不会造成问题。
注意:由于两个服务都在同一台服务器上,因此WB仍然可以与LB建立出站连接,但这会在内部发生。
- 此外,从CB到TURN服务器DMZ IP的绑定和分配请求也会得到响应,因为它们位于同一子网(边缘接口A和核心接口A),或者没有设置静态路由,它只是在默认接口(本例中为接口A)上发送该请求。
- 对于外部绑定和分配请求,它没有任何静态路由,因此使用默认接口A将流量路由出去(这会导致无法到达外部客户端)。
解决方案:
- 在边缘服务器上添加接口B,将接口A用于内部WB连接(以及LB),将接口B用于内部TURN服务器连接(避免443上的端口冲突用于TURN和WB)。 在MMP上使用下一个命令配置此配置(并相应地为接口B的新服务器地址更正呼叫桥上的TURN配置)。
ipv4 b add <IP-address>/<prefix length> <default-gateway>
ipv4 b enable
禁用
转向侦听d b
启用
- 使用以下命令添加静态路由,将流量从边缘服务器路由到内部核心服务器:
ipv4 b路由添加<address>/<prefix length>
注意:由于LB和WB仅对入站TCP连接做出响应,因此您只需为TURN的UDP数据包设置路由,因此您在接口B上执行此操作。另外,请确保接口B上的网关可以将其路由到CB。
例如,如果核心服务器的IP地址为192.168.0.100/24,则命令必须是ipv4 b route add 192.168.0.100/24或ipv4 b route add 192.168.0.100/32。
- 将外部TURN服务器接口(D)设置为流量的默认接口。
ipv4 d default
验证
当前没有可用于此配置的验证过程。
故障排除
当前没有可用于此配置的特定故障排除信息。
相关信息