前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >三层漫游会遇到哪些事儿

三层漫游会遇到哪些事儿

作者头像
ICT系统集成阿祥
发布2025-02-19 13:15:50
发布2025-02-19 13:15:50
6600
代码可运行
举报
文章被收录于专栏:数通数通
运行总次数:0
代码可运行

说明:

同一AC的三层漫游:指的是在同一个AC下面的不同AP之间不同业务之间的漫游(跨越三层网络),比如图中AP-1的业务VLAN 是10(192.168.10.0/24),而AP-2的业务VLAN是20(192.168.20.0/24),无线客户端从AP-1漫游到AP-2后,虽然处于AP-2上面,但是业务VLAN保持不变,IP地址也保持不变,只是由原先的AP-1变成了AP-2来转发无线客户端的业务。

实际拓扑案例演示

说明:该拓扑就一个办公区域,AP-1主要提供给转发VLAN101的业务,而AP-2主要提供转发VLAN102的业务,但是领导希望在办公区域内,客户端能够进行自动的切换关联,希望保持在比较不错的信号强度的AP下转发业务,这时候必须提供三层漫游功能来实现这个目的了。

管理VLAN 100:192.168.100.0/24

业务VLAN 101:192.168.101.0/24GW:192.168.101.254

业务VLAN 102:192.168.102.0/24GW:192.168.101.254

与路由器对接接口VLAN 100:192.168.100.0/24 交换机地址:192.168.100.1 路由器内网地址:192.168.100.1

隧道转发模式:直接转发

AP上线组网方式:二层(在一个子网广播域内),不需要DHCPOption43来实现

SSID:office 认证与加密方式:WPA2 PSK+AES

AP-1主要提供业务VLAN 101(也提供VLAN102的业务转发)

AP-2主要提供业务VLAN 102(也提供VLAN101的业务转发)

说明:这里AP肯定得为2个业务VLAN 能够提供转发才行,否则的话三层漫游多个业务VLAN之间AP需要能够识别的了,能够打上业务TAG。

1、模拟器外网设备配置

代码语言:javascript
代码运行次数:0
复制
[114]int lo 0
[114-LoopBack0]ipaddress 114.114.114.114 32
 
[114]interface  g0/0/0
[114-GigabitEthernet0/0/0]ipaddress 124.100.33.1 24

2、出口路由器设备配置

代码语言:javascript
代码运行次数:0
复制
[AR-GW]interface  g0/0/0
[AR-GW-GigabitEthernet0/0/0]ipaddress 124.100.33.2 30
 
[AR-GW]int g0/0/1
[AR-GW-GigabitEthernet0/0/1]ipaddress 192.168.100.1 24
 
[AR-GW]acl number 3000
[AR-GW-acl-adv-3000]rulepermit ip source 192.168.101.00.0.0.255
[AR-GW-acl-adv-3000]rulepermit ip source 192.168.102.0 0.0.0.255
 
[AR-GW]interface g0/0/0
[AR-GW-GigabitEthernet0/0/0]natoutbound 3000
 
[AR-GW]ip route-static0.0.0.0 0.0.0.0 124.100.33.1
[AR-GW]ip route-static192.168.101.0 24 192.168.100.2
[AR-GW]ip route-static192.168.102.0 24 192.168.100.2

3、核心交换机

代码语言:javascript
代码运行次数:0
复制
[Core]vlanbatch 100 to 101 102
 
[Core]dhcp enable
 
[Core]interface  vlan 100
[Core-Vlanif100]ipaddress 192.168.100.2 24
 
 
[Core]interface  vlan 101
[Core-Vlanif101]ipaddress 192.168.101.254 24
[Core-Vlanif101]dhcpselect interface
[Core-Vlanif101]dhcpserver dns-list 114.114.114.114 223.5.5.5
 
[Core]interface  vlan 102
[Core-Vlanif102]ip address 192.168.102.254 24
[Core-Vlanif102]dhcp select interface
[Core-Vlanif102]dhcp server dns-list 114.114.114.114223.5.5.5
 
 
[Core]interface  g0/0/3
[Core-GigabitEthernet0/0/3]portlink-type trunk
[Core-GigabitEthernet0/0/3]porttrunk allow-pass vlan 100 101 102
 
 
[Core]interface  g0/0/4
[Core-GigabitEthernet0/0/4]portlink-type trunk
[Core-GigabitEthernet0/0/4]porttrunk allow-pass vlan 100 101 102
 
[Core]interface  g0/0/2
[Core-GigabitEthernet0/0/2]portlink-type a
[Core-GigabitEthernet0/0/2]portdefault vlan 100
 
[Core]interface  g0/0/1
[Core-GigabitEthernet0/0/1]port link-type a
[Core-GigabitEthernet0/0/1]port default vlan 100
 
 
[Core]ip route-static0.0.0.0 0.0.0.0 192.168.100.1

4、接入设备1

代码语言:javascript
代码运行次数:0
复制
[Huawei]vlanbatch 100 101 102
 
[Huawei]interface  vlan 100
[Huawei-Vlanif100]ipaddress 192.168.100.4 24
 
[Huawei]intEthernet0/0/1
[Huawei-Ethernet0/0/1]portlink-type trunk
[Huawei-Ethernet0/0/1]port trunk allow-pass vlan 100 101 102
 
[Huawei]interface  Ethernet0/0/2
[Huawei-Ethernet0/0/2]port link-type trunk
[Huawei-Ethernet0/0/2]porttrunk pvid vlan 100
[Huawei-Ethernet0/0/2]port trunk allow-pass vlan 100 101 102
 
[Huawei]ip route-static0.0.0.0 0.0.0.0 192.168.100.2

5、接入设备2

代码语言:javascript
代码运行次数:0
复制
[Huawei]vlanbatch 100 101 102
 
[Huawei]interface  vlan 100
[Huawei-Vlanif100]ipaddress 192.168.100.5 24
 
[Huawei]intEthernet0/0/1
[Huawei-Ethernet0/0/1]portlink-type trunk
[Huawei-Ethernet0/0/1]port trunk allow-pass vlan 100 101 102
 
[Huawei]interface  Ethernet0/0/2
[Huawei-Ethernet0/0/2]port link-type trunk
[Huawei-Ethernet0/0/2]porttrunk pvid vlan 100
[Huawei-Ethernet0/0/2]port trunk allow-pass vlan 100 101 102
 
[Huawei]ip route-static0.0.0.0 0.0.0.0 192.168.100.2

这里一定注意接入交换机一定要创建VLAN 101与102,然后允许VLAN通过,这是为了让客户端漫游后原本的VLAN可以通过。

6、AC与WLAN业务配置

代码语言:javascript
代码运行次数:0
复制
[AC6005]vlan 100
 
[AC6005]dhcp enable
 
[AC6005]interface  vlan 100
[AC6005-Vlanif100]ipaddress 192.168.100.3 24
[AC6005-Vlanif100]dhcpselect  interface
[AC6005-Vlanif100]dhcpserver excluded-ip-address 192.168.100.1 192.168.100.10
 
[AC6005]ip route-static0.0.0.0 0.0.0.0 192.168.100.2
 
[AC6005]interface  g0/0/1
[AC6005-GigabitEthernet0/0/1]portlink-type a
[AC6005-GigabitEthernet0/0/1]portdefault vlan 100
 
[AC6005]capwapsource  interface  Vlanif 100
 
[AC6005]wlan 
[AC6005-wlan-view]apauth-mode no-auth
 
[AC6005-wlan-view]ssid-profile  name office
[AC6005-wlan-ssid-prof-office]ssidoffice
 
[AC6005-wlan-view]security-profilename office
[AC6005-wlan-sec-prof-office]securitywpa2 psk pass-phrase 88888888 aes
 
[AC6005-wlan-view]vap-profile  name office-1
[AC6005-wlan-vap-prof-office]ssid-profile  office
[AC6005-wlan-vap-prof-office]security-profileoffice
[AC6005-wlan-vap-prof-office]service-vlan vlan-id 101
 
[AC6005-wlan-view]vap-profile  name office-2
[AC6005-wlan-vap-prof-office]ssid-profile  office
[AC6005-wlan-vap-prof-office]security-profileoffice
[AC6005-wlan-vap-prof-office]service-vlan vlan-id 102
 
[AC6005-wlan-view]ap-id0
[AC6005-wlan-ap-0]vap-profileoffice-1 wlan 1 radio  all
 
[AC6005-wlan-view]ap-id1
[AC6005-wlan-ap-1]vap-profileoffice-2 wlan 1 radio all

(这里实际环境建议建立AP组,把办公1的划入一个,办公2的划入一个,然后VAP模板调用在组里面,实验环境就2台AP就直接这样调用了)

测试

连接AP1,我们获取的是192.168.101网段

连接AP2,获取的是192.168.102网段,目前是两个区域的网络都是不同的VLAN网段,来测试下漫游。

长ping,然后移动下

自动移动

漫游过来后,一只丢包,造成漫游失败,并且还一个现象。

在获取地址的现象,这里说下博主个人发现的原因应该是模拟器的一个小bug,这漫游是可以成功的,他需要在AC上面创建VLAN 101以及VLAN102的业务VLAN,否则的话会漫游不成功,但是从真机实践,从部署的角度来看我们采用的是直接转发,流量并不需要经过AC,所以AC是没有必要创建VLAN 101与102的,但是在模拟器里面就必须创建,否则就会出现上面的情况。

这个时候连上了,又通了,而且在AC的VLAN 101里面可以看到有一个wlan-dbss2接口的信息,这个我们在AR路由器做AC的时候见过,在新版本AC里面这个属于简化了的,但是在这个三层漫游里面需要创建VLAN,而且发现了这个接口(不确定是不是模拟器没有真正的改成新版本的,至少在三层漫游这块跟老版本很像)我们在接回AP1,然后移动到AP2来测试下。

AP1已经连接过来了,这个时候没有任何的丢包

AP-1会收到一个解除关联的提示

AC上面能看到关于这个客户端的漫游轨迹

客户端2连接过去丢了2个包,这个属于正常范围,而且模拟器本身比起实际还是差些,只能说模拟下效果。

display station roam-statistics :可以看到漫游的统计

可以看到IP是没有变动,没有说迁移过来后从101变成了102,或者说从102变成了101

当然MAC地址漂移还是会提示的,这个提示属于正常,我们可以不需要管,注意POE交换机不要开MAC漂移相关的安全功能,否则会导致接口的流量被block或者是直接接口关闭。

另外一种情况

在第十二篇的时候,我们讲解过这样一个案例,某个客户那边有4层楼,每个楼层都有对应的楼层办公,遇到的问题就是每天早晨上班的时候,2~4F办公人员从1F做电梯会把1F的地址池给获取光,导致1F无法正常使用,所以在实际中呢,我们还会部署vlan pool功能,我们需要注意的是交换机接AP的口一定要为Trunk,并且允许vlan pool里面的VLAN通过,这样不单单是获取到对应VLAN的地址池,而且在漫游的时候数据包也能通过,那么这种VLAN poll的形式,二三层漫游都有可能发生。(还不知道VLAN Pool功能的,可以翻过去看下第十二篇)

总结

整个下来其实可以发现漫游没有什么配置,我们只要把无线业务正常部署了,注意事项都了解了,漫游是自动化的,这就是AC的功能之一,注意的地方上跟二层漫游没啥区别

1、SSID与安全模板参数要一致(模板的名称可以不一样),但是里面的参数必须一样,如果有认证模板这些也要保持一样

2、undo learn-client-addressdisable:这个命令在整个实验里面也说过了什么作用,AP会替代客户端去发送免费ARP报文,来刷新三层网关的ARP表项,避免客户端在切换的过程中造成业务中断。

3、交换机接口一定要放行可能要漫游过来的VLAN客户端,否则客户端漫游过来后因为VLAN没有放行导致业务无法通信。

4、802.11r默认是没有开启的,当我们安全模板的参数启用的是WPA2+PSK-AES或者是WPA2+dot1x-AES以及open的时候,我们可以开启它,开启在SSID模板下面

代码语言:javascript
代码运行次数:0
复制
[AC6005-wlan-view]ssid-profilename office
[AC6005-wlan-ssid-prof-office]dot11renable

这里注意,如果部署的时候安全模板选这里WPA+WAP2-PSK-TPKI+AES混合模式,那么802.11r就算开启也是不生效的。

5、漫游过程中如果是ping测试,丢几个包属于正常的,有一个关联与解除关联的流程

6、业务VLAN建议AC也创建对应的(至少模拟器是必须),让WLAN-DBSS接口能够正常归属于对应VLAN里面,如果没创建会导致三层漫游失败。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-02-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 ICT系统集成阿祥 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档