简介
本文档讨论无线接入点控制和调配(CAPWAP)路径最大传输单元(PMTU)发现如何工作,以及当网络发生变化时如何进行相应调整。
先决条件
要求
Cisco 建议您了解以下主题:
使用的组件
本文档中的信息基于以下软件和硬件版本:
- AIR-AP3702I-Z-K9
- 运行15.0(2)EX1的2960X
- 运行15.0(2)ES10a的2960S
- 运行8.2.155.17的5508
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
背景信息
它描述了CAPWAP接入点(AP)实际安装在远程办公室位置,需要通过实际安装在数据中心的广域网注册到无线局域网控制器(WLC)的场景。要进一步添加,远程站点使用VPN或通用路由封装(GRE)逻辑连接到数据中心(DC)隧道和您的WiFi客户端无法使用可扩展身份验证协议(EAP-TLS)方法进行身份验证,您会想为什么。由于隧道协议引入了额外的开销,如果网络不进行相应调整,分段可能会成为障碍。
配置
网络图
配置
2960X:
interface Vlan7
ip address 7.7.7.1 255.255.255.0
!
interface Vlan8
ip address 8.8.8.1 255.255.255.0
2960S-A:
interface Vlan8
ip address 8.8.8.2 255.255.255.0
!
interface Tunnel1
ip address 172.16.1.1 255.255.255.0
no ip unreachables
tunnel source 9.9.9.2
tunnel destination 9.9.9.3
tunnel path-mtu-discovery
2960S-B:
interface Vlan9
ip address 9.9.9.3 255.255.255.0
!
interface Vlan10
ip address 10.10.10.3 255.255.255.0
!
interface Tunnel1
ip address 172.16.1.2 255.255.255.0
no ip unreachables
tunnel source 9.9.9.3
tunnel destination 9.9.9.2
tunnel path-mtu-discovery
WLC5508:
(WLC5508) >show interface summary
Number of Interfaces.......................... 18
Interface Name Port Vlan Id IP Address Type Ap Mgr Guest
-------------------------------- ---- -------- --------------- ------- ------ -----
vlan_50 1 50 192.168.50.11 Dynamic No No
vlan_60 1 60 192.168.60.11 Dynamic No No
vlan_70 1 70 192.168.70.11 Dynamic No No
management 1 178 10.67.81.11 Static Yes No
验证
初始CAPWAP PMTU发现发生在CAPWAP JOIN状态期间。AP尝试使用以下等式以1485字节(数据包#73图1)的最大CAPWAP PMTU进行协商。
1499字节=以太网+ CAPWAP PMTU
CAPWAP PMTU =外部IP + UDP + DTLS
位置
以太网= 14字节
CAPWAP PMTU = 1485字节
外部IP = 20字节
UDP = 25字节
DTLS = 1440字节
当WLC看到此情况并将相应响应发送回AP时,此值将成为初始CAPWAP PMTU。 如果WLC未从AP接收此信息,则WLC和AP将使用576字节。 AP交换机端口捕获的这一部分描述了AP尝试协商初始CAPWAP PMTU,该PMTU最终无法由WLC响应。

在AP上看到的相应调试(debug capwap client info)显示在下一个映像中。

如您所见,AP的初始尝试未能得到响应,导致在大约5秒后重新传输CAPWAP加入数据包。因此,AP立即回落至最低的576字节CAPWAP PMTU,如本图所示。

在RUN状态期间,AP尝试定期改进CAPWAP PMTU,方法是每30秒发送一次下一个最高的CAPWAP PMTU值。如果AP从WLC收到相应响应,则调整当前值。 否则,AP将再等30秒,再重复尝试改进当前CAPWAP PMTU。此图显示成功的CAPWAP PMTU协商。

此图中显示了AP上的相应调试。

最后,您可以检查在WLC上协商的CAPWAP PMTU,如下图所示。

故障排除
您可以使用命令检查AP上的当前PMTU大小,如下图所示。

现在,人们可能会问,如果路径IP MTU已改进或降级,CAPWAP PMTU如何动态调整?
如果改进,您应该会看到AP在改进当前CAPWAP PMTU时的下一次定期尝试,WLC会确认并相应调整。
如果降级,AP为改进当前CAPWAP PMTU而进行的下一次定期尝试将导致WLC没有相应响应,并且ICMP不可达(类型3,代码4)具有下一跳MTU,从而导致CAPWAP PMTU降低。 如果无法到达的互联网控制消息协议(ICMP)永远无法到达AP,AP不会对当前CAPWAP PMTU进行任何调整,这可能导致因大分段而丢弃数据包。
注意:请注意,ICMP不可达可能由防火墙过滤以防止DoS攻击,这是一种常见做法。请确保当事情不正常时不会发生这种情况。
以下是隧道接口IP MTU从1500更改为900时发生的情况示例。

如您所见,ICMP不可达会立即将CAPWAP PMTU减少到576字节,直到它调整到下一跳MTU值(如下图所示)。

总之,CAPWAP PMTUD算法的工作原理是这样的。
步骤1.初始CAPWAP PMTU将在AP加入阶段协商。
步骤2. 30秒后,AP将尝试通过发送下一个预定义的更高CAPWAP PMTU值(576、1005和1485字节)来改进当前CAPWAP PMTU。
第3步(选项1)。 如果对尝试有相应的WLC响应,请将当前CAPWAP PMTU调整为新值并重复步骤2。
第3步(选项2)。 如果对尝试没有相应的WLC响应,请保持当前CAPWAP PMTU不变,并重复步骤2。
步骤3(选项3)。 如果没有相应的WLC响应,并且我们看到具有下一跳值的ICMP不可达(类型3,代码4),请将CAPWAP PMTU调整为此值,并重复步骤2。