锐捷瘦AP发现AC的4中方式

锐捷瘦AP发现AC有4种方式,优先级从高到低:

  1. AP静态配置acip;
  2. DHCP Option138;
  3. DNS解析ac.ruijie.com.cn;
  4. 广播/组播CAPWAP发现报文(224.0.1.140)

1、什么场景必须配置 option138

三层跨VLAN场景:AP和AC不在同一个广播域(不同子网,广播报文无法跨VLAN转发),必须配置option138,告诉APAC的CAPWAP地址(这里就是3.3.33.3)。

命令示例(AP的DHCP地址池下面):

ip dhcp pool pool_Ag1.104
 option 138 ip 3.3.33.3
 network 10.10.20.0 255.255.255.0
 default-router 10.10.20.1

option138里面填的,正好就是capwap ctrl‑ip指定的loopback0地址3.3.33.3。

2、你现在这份配置为什么没有写option138,AP还能上线?

看你的组网:

  • AP属于VLAN104,网段10.10.20.0/24;
  • EG3022的子接口AggregatePort1.104地址10.10.20.1,就是AP的网关;
  • AP发送CAPWAP广播发现报文,广播报文在VLAN104广播域内,EG集成的AC模块可以直接收到这个广播报文;
  • AC收到AP广播发现请求,用capwap ctrl‑ip 3.3.33.3作为源IP回复AP,AP收到回复,直接和3.3.33.3建立CAPWAP隧道。

👉 二层同广播域,AP发广播发现,不需要option138也能正常上线。

但是!AP重启之后,AP会把学到的AC地址3.3.33.3保存在AP的Flash里面,下次上电就算没有广播,AP也会直接单播去连3.3.33.3,所以就算广播不通,老AP也能上来,新AP第一次上电就无法上线。

3、风险点(非常重要)

现在现状:

  • 老AP:已经记住3.3.33.3,重启也能单播上线;
  • 全新出厂AP,第一次接入网络:依赖VLAN104广播,如果交换机开启了broadcast‑suppression广播抑制,或者以后AP被放到别的VLAN,新AP就无法发现AC,无法上线。

所以最佳实践,即使二层同广播域,AP的DHCP地址池也建议加上option138 ip 3.3.33.3,避免广播被拦截导致新AP无法注册AC。

4、区分两个概念,不要搞混

  1. capwap ctrl‑ip 3.3.33.3【AC侧配置】

    AC告诉自己:我和AP建立CAPWAP隧道的时候,我要用哪个源IP跟AP通信。 只定义AC的源地址,不会主动把这个IP下发给AP。

  2. option 138 ip 3.3.33.3【DHCP地址池配置,AP的地址池下面】

    DHCP服务器告诉AP:你要去找这个IP建立CAPWAP隧道。 这是下发给AP的,是AP用来找AC的地址。

两者配合关系:option138填写的IP,必须等于capwap ctrl‑ip设置的loopback地址。

5、你这份配置修复建议

你的AP地址池:pool_Ag1.104,建议增加option138:

ip dhcp pool pool_Ag1.104
 lease 0 8 0
 network 10.10.20.0 255.255.255.0
 dns-server 114.114.114.114
 default-router 10.10.20.1
 option 138 ip 3.3.33.3   !新增这一行

加完之后,新AP上电获取DHCP,直接拿到AC的CAPWAP地址3.3.33.3,用单播报文建立隧道,不再依赖广播报文,网络更健壮。

6、如果以后AP放到别的三层网段(跨设备)

  • 别的DHCP服务器也必须下发option138 ip 3.3.33.3;
  • 同时网络路由必须保证AP网段能够路由可达3.3.33.3/32,否则AP拿到地址也建不起隧道。

总结一句话

  • 二层同广播域:可以不配置option138,靠广播发现;但是不推荐,存在隐患。
  • 三层跨网段:必须配置option138,值为AC的capwap ctrl‑ip地址(3.3.33.3)。
  • capwap ctrl‑ip是AC自己的源IP,不等于option138,两者分工不同。

补充验证命令,登录AP执行:show capwap client state,可以看到AP学习到的AC地址列表,区分是广播学到的还是DHCP option138学到的。

发表评论