WLAN配置实验

news2024/11/27 10:27:21

本文记录了WLAN配置实践的过程,该操作在华为HCIA中属于相对较复杂的实验,记录过程备忘。这里不就WLAN原理解释,仅进行配置实践,可以作为学习原理时候的参考。本文使用华为ENSP进行仿真。实验拓扑图如下:

image-20231210011047594

1.WLAN工作流程

image-20231209095723691

2.模拟器实验操作

步骤0 :准备工作

在配置WLAN之前,需要确保基本网络的连通性,这里在ENSP中使用的WLAN拓扑如下,采用瘦AP模式,由路由器上配置DHCP,LSW1进行DHCP中继,AC采用旁挂式。设置两个VLAN,其中VLAN100 控制VLAN 传输CAPWAP协议,VLAN200是业务VLAN。其中LSW2作为二层交换机使用,LSW1作为三层交换机使用。

  • ap不用做特别配置,刚上线时候外联端口是hybrid类型,使用POE+标准(802.3at)
image-20231209102026376
  • SW2配置

    [SW2]vlan batch 100 200  # 创建业务和数据VLAN
    [SW2]int g0/0/2
    [SW2-GigabitEthernet0/0/2]port link-type trunk
    [SW2-GigabitEthernet0/0/2]port trunk allow-pass vlan 100 200
    
    # AP刚发出的帧是不带标记的,为了让帧能达到VLAN100对应的三层接口,
    # 需要打上标记,因此配置PVID100
    [SW2-GigabitEthernet0/0/2]port trunk pvid vlan 100
    
    # 这里不能配置PVID100,否则AP数据从0/0/1口出来后会被剥离VLAN100标签,
    # 无法找到VLAN100三层口
    [SW2]interface GigabitEthernet0/0/1
    [SW2-GigabitEthernet0/0/1] port link-type trunk
    [SW2-GigabitEthernet0/0/1] port trunk allow-pass vlan 100 200
    
  • SW1配置

    [SW1]vlan batch 100 200
    
    [SW1]interface GigabitEthernet0/0/2
    [SW1-GigabitEthernet0/0/2]port link-type trunk
    [SW1-GigabitEthernet0/0/2]port trunk allow-pass vlan all
    
    [SW1]interface GigabitEthernet0/0/3
    [SW1-GigabitEthernet0/0/3] port link-type trunk
    [SW1-GigabitEthernet0/0/3] port trunk allow-pass vlan all
    
    [SW1]interface GigabitEthernet0/0/1
    # 需要配置为aceess,数据通向路由器时候标签被去除,否则路由器不认识包
    # 如果要配置为trunk,则需要配置PVID移除标签
    [SW1-GigabitEthernet0/0/1]port link-type access 
    [SW1-GigabitEthernet0/0/1]port default vlan 1000
    
  • AC配置

    [AC]vlan batch 100 200
    [AC-GigabitEthernet0/0/1] port link-type trunk
    [AC-GigabitEthernet0/0/1] port trunk allow-pass vlan all
    
  • 配置DHCP中继

    • SW1上配置接口类型

      [SW1]interface vlanif100
      [SW1-Vlanif100]ip address 10.1.1.2 24
      
      # 交换机与路由器之间建立三层逻辑口,将g0/0/1划入VLAN1000
      [SW1]vlan 1000
      [SW1]interface GigabitEthernet0/0/1
      [SW1-GigabitEthernet0/0/1]port link-type access 
      [SW1-GigabitEthernet0/0/1]port default vlan 1000
      
    • R1配置相关接口

      [AR1]interface GigabitEthernet0/0/0
      [AR1-GigabitEthernet0/0/0] ip address 10.1.12.1 255.255.255.0 
      

      此时可以在路由器上ping通交换机端口

      image-20231209111758998

      在SW2 g0/0/1上抓包,可以看到DHCP Discocery广播

      image-20231208194020913

      但此时交换机不会将该DHCP广播帧泛洪到路由器。因为从SW2 g0/0/1上传递出来的DHCP Discocery报文是打着VLAN100标签,只能到达VLANif100对应目的地,而SW1的g0/0/1属于VLANif 1000,因此必须通过三层转发才行。

      但是该广播没法转发到路由器DHCP服务器,需要在SW1上开启DHCP中继。继续在SW1上进行配置:

    • SW1上配置中继

      [SW1]dhcp enable
      [SW1]int vlan 100
      [SW1-Vlanif100]dhcp select relay  # 配置中继后,广播变成单播
      [SW1-Vlanif100]dhcp relay server-ip 10.1.12.1 # 设置DHCP服务器地址
      

      在SW1 g0/0/1上进行抓包,可以看到已经从上面的广播变为单播,但此时只是AP发往路由器,并没有路由器给AP的回复。

      image-20231209232153199

    • 在路由器上开启DHCP功能

      [AR1]dhcp enable # 开启DHCP功能
      [AR1]ip pool 1 # 配置DHCP地址池
      [AR1-ip-pool-1]network 10.1.1.0 mask 255.255.255.0
      [AR1-ip-pool-1]excluded-ip-address 10.1.1.1  # 排除一个地址给AC用
      [AR1-ip-pool-1]gateway-list 10.1.1.254 # 配置AP网关地址
      [AR1]interface g0/0/0
      [AR1-GigabitEthernet0/0/0]dhcp select global  # 在接口上开启地址分配
      
    • R1和SW1上配置路由

      • AR
      [AR1]ospf router-id 1.1.1.1
      [AR1-ospf-1]area 0
      # 简化起见,全网通告
      [AR1-ospf-1-area-0.0.0.0]network 0.0.0.0 255.255.255.255 
      
      • SW1
      [SW1]ospf router-id 2.2.2.2
      [SW1-ospf-1]area 0 
      [SW1-ospf-1-area-0.0.0.0]network 0.0.0.0 255.255.255.255
      

      在SW1 g0/0/1上进行抓包,可以看到服务器回复的DHCP Offer:

      image-20231209235615503

      展开DHCP服务器发给中继的DHCP Offer消息,可以看到以下关键信息:

      image-20231210000040740

      中继是替客户端AP获取动态地址,因此此处抓到的都是中继和DHCP服务器之间的DHCP交互,而且经过中继后是单播形式。

      在AP上查看,现在AP已经获得了DHCP动态分配的IP地址,即上面看到的10.1.1.253/24

      image-20231210000444267

步骤1:AP上线

FIT AP需完成上线过程,AC才能实现对AP的集中管理和控制,以及业务下发。为了AP能上线,AC需要配置如下内容:

image-20231210005425571

AP的上线过程包括如下步骤:

1.1 AP获取IP地址;

这一步的操作在步骤0中已经完成,在实验中可以看到AP1已经获取到了10.1.1.253/24

1.2 AP发现AC并与之建立CAPWAP隧道

在AP通过DHCP得到自己的地址后,就会通过广播发送CAMWAP协议去找AC,此时在SW2 g0/0/1开启抓包,可以看到:

image-20231210001250710

注意:如果AP和AC不在同一个网段,这个时候AP就不可能用广播去寻找AC,而是单播寻找。在R1的DHCP中需要增加option43配置:

[AR1]ip pool 1

[AR1-ip-pool-1]option 43 ip-address AC地址

这一步受限于模拟器无法做出效果,真机中可以。

上面的报文中可以看到AC并未回复,接下来配置AC:

[AC]interface Vlanif 100
[AC-Vlanif100]ip address 10.1.1.1 24
[AC]capwap source interface Vlanif 100 # 配置CAPWAP源地址
1.3 AP接入控制
image-20231210004828327

AC上配置监视域的模版:

[AC]wlan 
[AC-wlan-view]regulatory-domain-profile name ctr  # 配置监控域模版,ctr是自定义名字
[AC-wlan-regulate-domain-ctr]country-code cn # 国家码,每个国家发射功率不同

AC上配置AP组,方便需要对多个AP进行分组管控:

[AC]wlan 
[AC-wlan-view]ap-group name ctr   # 建立AP组,ctr是自定义名字
Info: This operation may take a few seconds. Please wait for a moment.done.
[AC-wlan-ap-group-ctr]regulatory-domain-profile ctr # 将监控域模版挂入需要的AP组
Warning: Modifying the country code will clear channel, power and antenna gain c
onfigurations of the radio and reset the AP. Continue?[Y/N]:y

AC上配置AP信息,可以用AP序列号SN认证,也可以用AP MAC认证,这里用AP MAC认证,查询AP MAC:

image-20231210004022701

在AC上配置

[AC]wlan
[AC-wlan-view]ap-id 1 ap-mac 00e0-fc41-58d0 # 配置AP的MAC 
[AC-wlan-ap-1]ap-group ctr # 挂到AP组,让AP上线

查看一下AP是否上线,看到状态nor为正常上线

image-20231210004426991

此时在AP上也弹出上线消息,命令提示符转换为BSSID:

image-20231210005107528

在在SW2 g0/0/1开启抓包,可以看到,完整的CAMWAP交互报文:

image-20231210004804907

  • CAPWAP隧道维持。
image-20231210005313380
步骤2 WLAN参数下发

需要在AC上建立如下模版:

image-20231210010115264
2.1 建立安全模版
[AC]wlan
[AC-wlan-view]security-profile name ctr   # ctr是自定义名字
# psk:共享秘钥方式  huawei@123:自定义的秘钥   aes:使用高级加密方式
[AC-wlan-sec-prof-ctr]security wpa-wpa2 psk pass-phrase huawei@123 aes
2.2 建立SSID模版
[AC]wlan
[AC-wlan-view]ssid-profile name  ctr 
[AC-wlan-ssid-prof-ctr]ssid ctr   # ctr为自定义名称
2.3 建立VAP模版
[AC]wlan
[AC-wlan-view]vap-profile name ctr
[AC-wlan-vap-prof-ctr]ssid-profile ctr   # 把SSID模版挂上去
Info: This operation may take a few seconds, please wait.done.
[AC-wlan-vap-prof-ctr]security-profile ctr # 把安全模版挂上去
Info: This operation may take a few seconds, please wait.done.
[AC-wlan-vap-prof-ctr]service-vlan vlan-id 200  # 业务VLAN,数据上来后会打上VLAN200标签
Info: This operation may take a few seconds, please wait.done.
2.4 下发参数
[AC]wlan 
[AC-wlan-view]ap-group name ctr
[AC-wlan-ap-group-ctr]vap-profile ctr wlan 1 radio all  # 下发安全、SSID、射频频段
Info: This operation may take a few seconds, please wait...done.

下发配置后,模拟器中的拓扑图上WLAN区域可以看到变化,不得不说华为的ENSP模拟得挺好。

image-20231210011154256

此时在模拟器中添加一个笔记本电脑,连接WLAN,发现地址获取不到:

image-20231210011418319

原因在于业务VLAN200在SW1中没有配置

[SW1]interface Vlanif 200
[SW1-Vlanif200]ip address 192.168.1.254 24
[SW1-Vlanif200]dhcp select interface  # 通过接口自动分配DHCP地址

此时笔记本WLAN已经连接上

image-20231210011845654

ping网关能通:

image-20231210012059953

此时业务数据不会经过AC(direct-forward),如果所有业务都需要先通过隧道方式到达AC再转发,则需要在AC上如下配置:

[AC]wlan 
[AC-wlan-view]vap-profile name ctr
[AC-wlan-vap-prof-ctr]forward-mode tunnel 
Warning: This action may cause service interruption. Continue?[Y/N]y

此时在笔记本上ping 192.168.1.254,在SW2 g0/0/1口抓ICMP包,可以看到先找AC后找网关的过程,使用的使IPOverIP技术

image-20231210013443824

步骤3 再增加一个AP,测试漫游功能

查看AP2 MAC

image-20231210013724099

在AC上加入AP2

[AC]wlan
[AC-wlan-view]ap-id 2 ap-mac 00e0-fc87-2990 
[AC-wlan-ap-2]ap-group ctr
Warning: This operation may cause AP reset. If the country code changes, it will
 clear channel, power and antenna gain configurations of the radio, Whether to c
ontinue? [Y/N]:y
Info: This operation may take a few seconds. Please wait for a moment.. done.

在SW2上做相应配置:

[SW2]interface g0/0/3
[SW2-GigabitEthernet0/0/3]port link-type trunk 
SW2-GigabitEthernet0/0/3]port trunk pvid vlan 100
[SW2-GigabitEthernet0/0/3]port trunk allow-pass vlan all

此时在AC上可以看到新增加的AP:

image-20231210014528810

模拟器中AP2也开始发射信号

image-20231210014555326

在模拟器上将笔记本电脑从AP1区域移动到AP2区域,在笔记本上持续ping 192.168.1.254,可以发现不掉包,即在ESS内,可以不改变SSID进行漫游切换

image-20231210014958912 image-20231210015021046

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1300740.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于OpenCV的流水线包装箱检测计数应用(附源码)

导 读 本文主要介绍基于OpenCV的流水线包装箱检测计数应用,并给出源码。 资源下载 完整代码和视频下载地址: https://github.com/freedomwebtech/rpi4-conveyor-belt-boxces-counter 核心代码如下(cboxtest.py): import cv2import numpy as npfrom tracker import*cap=c…

javaSwing酒店管理

一、介绍 在这篇博客中,我们将介绍一个基于MySQL数据库、Java编程语言和Swing图形用户界面的简单酒店管理系统。该系统包括了查询房客信息、查询房客状态、修改房客信息、添加房间信息、添加住户、退房管理、预定管理、退订管理、入账管理、出账管理、修改资料等多…

HarmonyOS4.0从零开始的开发教程11给您的应用添加弹窗

HarmonyOS(十)给您的应用添加弹窗 概述 在我们日常使用应用的时候,可能会进行一些敏感的操作,比如删除联系人,这时候我们给应用添加弹窗来提示用户是否需要执行该操作,如下图所示: 弹窗是一种…

5.题目:编号1624 小蓝吃糖果

题目: ### 这道题主要考察poriority_queue优先队列 #include<bits/stdc.h> using lllong long; using namespace std; int main(){ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);int n;cin>>n;priority_queue<int> pq;ll sum0,x;for(int i1;i<n;i){c…

基于SSM的java衣服商城

基于SSM的java衣服商城 一、系统介绍二、功能展示四、其他系统实现五、获取源码 一、系统介绍 项目类型&#xff1a;Java EE项目 项目名称&#xff1a;基于SSM的美衣商城 项目架构&#xff1a;B/S架构 开发语言&#xff1a;Java语言 前端技术&#xff1a;Layui等 后端技术…

数据结构:数和二叉树

树概念及结构 树的结构&#xff1a; 树是一种非线性的数据结构&#xff0c;它是由n个有限节点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树&#xff0c;即根朝上&#xff0c;叶朝下。 有一个特殊的节点&#xff0c;成为根节点&#xff0c;根节点没有…

详解ZNS SSD基本原理

ZNS SSD的原理是把namespace空间划分多个zone空间&#xff0c;zone空间内部执行顺序写。这样做的优势&#xff1a; 降低SSD内部的写放大&#xff0c;提升SSD的寿命 降低OP空间&#xff0c;host可以获得更大的使用空间 降低SSD内部DRAM的容量&#xff0c;降低整体的SSD成本 降…

15、lambda表达式、右值引用、移动语义

前言 返回值后置 auto 函数名 (形参表) ->decltype(表达式) lambda表达式 lambda表达式的名称是一个表达式 (外观类似函数)&#xff0c;但本质绝非如此 语法规则 [捕获表] (参数表) 选项 -> 返回类型 { 函数体; }lambda表达式的本质 lambda表达式本质其实是一个类…

Windows汇编调用printf

VS2022 汇编 项目右键 生成依赖项 生成自定义 勾选masm 链接器 高级 入口点 main X86 .686 .model flat,stdcall option casemap:none includelib ucrt.lib includelib legacy_stdio_definitions.libEXTERN printf:proc.data szFormat db %s,0 szStr db hello,0.code main…

AI 绘画 | Stable Diffusion 艺术字与光影效果

前言 这篇文章教会你如何使用Stable Diffusion WEB UI扩展插件ControlNet控制光影模型实现艺术字与图片的光影效果。艺术字主要原理是用到了Depth (深度)算法和模型,光影效果是用到了control_v1p_sd15_brightness(亮度)和control_v1p_sd15_illumination(光亮)两个模型其中…

力扣每日一题day32[104. 二叉树的最大深度]

给定一个二叉树 root &#xff0c;返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;3示例 2&#xff1a; 输入&#xff1a;root [1,null,2] 输出…

Spring Boot 3 集成 Druid 连接池详解

在现代的Java应用中&#xff0c;使用一个高效可靠的数据源是至关重要的。Druid连接池作为一款强大的数据库连接池&#xff0c;提供了丰富的监控和管理功能&#xff0c;成为很多Java项目的首选。本文将详细介绍如何在Spring Boot 3项目中配置数据源&#xff0c;集成Druid连接池&…

普冉(PUYA)单片机开发笔记(7): ADC-轮询式多路采样

概述 应用中经常会有使用单片机进行模数转换的需求。PY32F003 具有 1 个 12 位的模拟数字转换器&#xff08;ADC&#xff09;&#xff0c;今天我们一起来使用一下这个 ADC。 数据手册中对 ADC 简介如下。 SAR ADC&#xff1a;逐次逼近式 ADC&#xff0c;原理参见“参考链接&a…

六何分析法分析uniApp

一、什么是 uniApp&#xff08;What&#xff09; uni-app 是一个使用 Vue.js 开发所有前端应用的框架&#xff0c;开发者编写一套代码&#xff0c;可发布iOS、Android、H5、以及各种小程序( 微信/支付宝/百度/头条/00/钉钉/淘宝)、快应用等多个平台。uni-app 在手&#xff0c;…

AI隆重软件,AI原创文章隆重软件

随着信息量的急剧增加&#xff0c;许多写作者、网站管理员和内容创作者们纷纷感受到了文章降重的压力。原始文本的降重&#xff0c;需要保留关键信息的同时避免重复&#xff0c;这是一项既繁琐又耗时的任务。 改写软件的批量降重功能 147SEO改写软件在降重领域的卓越表现主要体…

小目标检测模型设计的一点思考

1. 小目标的特性 目标之间的交叠概率比较低&#xff0c;即使有交叠&#xff0c;其IoU多数情况下也是比较小的 AI-TOD Tiny Person Dateset 小目标自身的纹理显著度有强弱区别&#xff0c;但是总体来说纹理特征都较弱&#xff0c;很多时候需要借助一定的图像上下文来帮助确认 …

自动驾驶学习笔记(十七)——视觉感知

#Apollo开发者# 学习课程的传送门如下&#xff0c;当您也准备学习自动驾驶时&#xff0c;可以和我一同前往&#xff1a; 《自动驾驶新人之旅》免费课程—> 传送门 《Apollo 社区开发者圆桌会》免费报名—>传送门 文章目录 前言 分类 目标检测 语义分割 实例分割 …

Angular 从零开始,快速上手

Angular 从零开始&#xff0c;快速上手 一、AngularJS 简介1.1 AngularJS 的背景1.2 AngularJS 的简介1.3 AngularJS 概念概述1.4 AngularJS 特性1.5 AngularJS 和 JQuery 比较 二、安装 AngularJS2.1 方式一&#xff1a;使用在线 cdn2.2 方式二&#xff1a;使用依赖管理工具 n…

三. LiDAR和Camera融合的BEV感知算法-BEV-SAN

目录 前言0. 简述1. 算法动机&开创性思路2. 主体结构3. 损失函数4. 性能对比总结下载链接参考 前言 自动驾驶之心推出的《国内首个BVE感知全栈系列学习教程》&#xff0c;链接。记录下个人学习笔记&#xff0c;仅供自己参考。 本次课程我们来学习下课程第三章——LiDAR和Ca…

弧形导轨的结构特点

弧形导轨&#xff0c;顾名思义就是滑座沿着导轨做弧线运动&#xff0c;在工业自动化的许多运用中&#xff0c;直线运动很遍及&#xff0c;但是有些运用&#xff0c;需求弧线运动&#xff0c;或者两个相交或平行的直线运动&#xff0c;需求通过弧线运动衔接起来&#xff0c;那么…