WLAN配置实验

本文记录了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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

作业调度算法(含详细计算过程)和进程调度算法浅析

一.作业调度 作业调度算法需要知道以下公式 周转时间完成时间 - 到达时间 带权周转时间周转时间/运行时间 注:带权周转时间越大,作业(或进程)越短;带权周转时间越小,作业(或进程)越…

docker-centos中基于keepalived+niginx模拟主从热备完整过程

文章目录 一、环境准备二、主机1、环境搭建1.1 镜像拉取1.2 创建网桥1.3 启动容器1.4 配置镜像源1.5 下载工具包1.6 下载keepalived1.7 下载nginx 2、配置2.1 配置keepalived2.2 配置nginx2.2.1 查看nginx.conf2.2.2 修改index.html 3、启动3.1 启动nginx3.2 启动keepalived 4、…

7-8 报销

年底,报销都挤在一堆,财务忙得不可开交。每个报销表包括姓名,各项费用的金额。对于每个报销单,这里规定按如下要求处理: 金额高的优先处理;若金额相等时,则姓名字典序小的优先处理;…

call,apply,bind

1.这三个方法都能改变this的指向 2.代码实战 let obj1 {name: "小红",age: 20,fn: function () {console.log(当前this的指向,this);console.log(我叫${this.name},今年${this.age}岁);},};obj1.fn(); 这里的代码,obj1是一个对象,里面有属性name和age 正常情况下我…

深入理解网络中断:原理与应用

🔭 嗨,您好 👋 我是 vnjohn,在互联网企业担任 Java 开发,CSDN 优质创作者 📖 推荐专栏:Spring、MySQL、Nacos、Java,后续其他专栏会持续优化更新迭代 🌲文章所在专栏&…

大数据技术8:StarRocks极速全场景MPP数据库

前言:StarRocks原名DorisDB,是新一代极速全场景MPP数据库。StarRocks 是 Apache Doris 的 Fork 版本。StarRocks 连接的多种源。一是通过这个 CDC 或者说通过这个 ETL 的方式去灌到这个 StarRocks 里面;二是还可以去直接的和这些老的 kafka 或…

C++ 模拟实现vector

目录 一、定义 二、模拟实现 1、无参初始化 2、size&capacity 3、reserve 4、push_back 5、迭代器 6、empty 7、pop_back 8、operator[ ] 9、resize 10、insert 迭代器失效问题 11、erase 12、带参初始化 13、迭代器初始化 14、析构函数 完整版代码 一、…

MyBatis 四大核心组件之 Executor 源码解析

🚀 作者主页: 有来技术 🔥 开源项目: youlai-mall 🍃 vue3-element-admin 🍃 youlai-boot 🌺 仓库主页: Gitee 💫 Github 💫 GitCode 💖 欢迎点赞…

【IDEA】IntelliJ IDEA中进行Git版本控制

本篇文章主要记录一下自己在IntelliJ IDEA上使用git的操作,一个新项目如何使用git进行版本控制。文章使用的IDEA版本 IntelliJ IDEA Community Edition 2023.3,远程仓库为https://gitee.com/ 1.配置Git(File>Settings) 2.去Git…

Leetcode刷题详解——仅仅反转字母

1. 题目链接:917. 仅仅反转字母 2. 题目描述: 给你一个字符串 s ,根据下述规则反转字符串: 所有非英文字母保留在原有位置。所有英文字母(小写或大写)位置反转。 返回反转后的 s 。 示例 1: 输…

docker-ubuntu中基于keepalived+niginx模拟主从热备完整过程

一、环境准备 🔗在Ubuntu中安装docker 二、主机 1、环境搭建 1.1 镜像拉取 docker pull ubuntu:16.041.2 创建网桥 docker network create -dbridge --subnet192.168.126.0/24 br11.3 启动容器 docker run -it --name ubuntu-1 --privileged -v /home/vac/l…

PPP协议概述与实验示例

PPP协议概述与实验示例 概述 PPP(Point-to-Point Protocol)是一种用于在点对点连接上传输多协议数据包的标准方法。它已经成为最广泛使用的互联网接入数据链路层协议,可以与各种技术结合,如ADSL、LAN等,实现宽带接入…

【rabbitMQ】rabbitMQ控制台模拟收发消息

目录 1.新建队列 2.交换机绑定队列 3.查看消息是否到达队列 总结: 1.新建队列 2.交换机绑定队列 点击amq.fonout 3.查看消息是否到达队列 总结: 生产者(publisher)发送消息,先到达交换机,再到队列&…

phpstudy小皮(PHP集成环境)下载及使用

下载 https://www.xp.cn/download.html直接官网下载即可,下载完解压是个.exe程序,直接点击安装就可以,它会自动在D盘目录为D:\phpstudy_pro 使用 phpMyAdmin是集成的数据库可视化,这里需要下载一下,在软件管理-》网站程…

linux逻辑卷LVM

创建LVMVG管理LV扩容 6.2.6 逻辑卷LVM LVM是Logical Volume Manager 的简称,译为逻辑卷管理,它是Linux下对硬盘分区的一种管理机制。LVM适合于管理大存储设备,并允许用户动态调整文件系统的大小。此外,LVM的快照功能可以帮助我们快…

第九天:信息打点-CDN绕过篇amp;漏洞回链amp;接口探针amp;全网扫描amp;反向邮件

信息打点-CDN绕过篇 cdn绕过文章:https://www.cnblogs.com/qiudabai/p/9763739.html 一、CDN-知识点 1、常见访问过程 1、没有CDN情况下传统访问:用户访问域名-解析服务器IP–>访问目标主机 2.普通CDN:用户访问域名–>CDN节点–>…

设计模式-外观模式

设计模式专栏 模式介绍模式特点应用场景外观模式和里氏替换原则的区别代码示例Java实现外观模式python实现外观模式 外观模式在spring中的应用 模式介绍 外观模式(Facade Pattern)是一种结构性设计模式,它隐藏了系统的复杂性,并向…

[后端卷前端2]

绑定class 为什么需要样式绑定呢? 因为有些样式我们希望能够动态展示 看下面的例子: <template><div><p :class"{active:modifyFlag}">class样式绑定</p></div> </template><script>export default {name: "goo…

Docker中的常见命令

Docker开机自启 systemctl enable dockerDocker容器开机自启 docker update --restartalways [容器名/容器id]案例&#xff1a;docker操作nginx 拉取Nginx镜像 docker pull nginx查看镜像 docker images创建并运行Nginx容器 docker run -d --name nginx -p 80:80 nginx查…

(NeRF学习)3D Gaussian Splatting Instant-NGP环境配置

学习参考&#xff1a; 3D gaussian splatting 安装步骤拆解23.9月3D Gaussian Splatting入门指南【五分钟学会渲染自己的NeRF模型&#xff0c;有手就行&#xff01;】 三维重建instant-ngp环境部署与colmap、ffmpeg的脚本参数使用 一、3D Gaussian Splatting &#xff08;一&…