• 文章搜索:
  • 灵犀一指

        • 分享到...

        • 新浪微博
        • 腾讯微博
        • 推荐到豆瓣 豆瓣空间
        • 分享到搜狐微博 搜狐微博
        • 分享到QQ空间 QQ空间
        • 分享到腾讯朋友 腾讯朋友
        • 网易微博分享 网易微博
        • 添加到百度搜藏 百度搜藏
        • 转贴到开心网 开心网
        • 转发好友 告诉聊友
    • 推荐
    • 打印
    • 收藏

    “大隐”之路-终端数据空口换装,走LWAPP隧道,过QinQ山洞,直达“光明顶”

    作者:  |  上传时间:2014-11-26  |  关键字:“大隐”之路-终端数据空口换装,走LWAPP隧道,过QinQ山洞,直达“光明顶”

    WiFi网络是目前最热闹的领域,不仅因为其具有规模庞大的终端信徒,而且基于WiFi的业务应用也如雨后春笋般冒出尖儿来。WiFi网络最活跃的元素就是无处不在的终端,也许藏匿于深山老林,也许混迹于街头闹市,但“终端”性格内敛,而且注重隐私,总希望自己的信息数据在网络中可以尽量隐藏起来,走江湖人都比较崇尚的VPN路线,直达心中的“光明顶”膜拜。值得庆幸的是通往神殿的道路中,很多大路已经配置有GRE、IPSec、QinQ等有线领域中传统的VPN,可以复用,这自然不必担心,需要关注的是从家里出发,抵达AP驿站,然后一路前行至AC隘口,再从AC行至大路入口的这一段路程,如何藏踪隐迹,确需费些周折。道路虽然崎岖,倒也可有玲珑之法,隐终端数据于无形,成就终端“大隐”之路,下面慢慢道来。

    一、 由终端家门往来AP驿站间,易容饰装,“大隐隐于市”

    由终端到AP这段路俗称“空口”,方圆开阔,路无章法,且三教九流,龙蛇混杂,闹市中人群熙熙攘攘。终端在这段路上隐匿前行,需要进行易容,否则很容易被歹人识破,或者被邻里窥见,一般这个隐形过程可以通过空口加密的方式实现。

    终端和AP间的数据加密不仅保证了信息安全,而且实现了隐私的保护,符合VPN之道。这部分内容在802.11i中得到了充分体现,概况来说,和其他的加密原理类似,不同的是加密结果以无线电磁波的形式往返于终端和AP间。对数据进行加密需要一套复杂的算法公式,而这套公式中除了一些常量信息外,最关键的就是变量-密钥,而获取密钥和进行密钥管理的方式有PSK和802.1x,这两种方式都是获取种子密钥(PMK/GMK)的实现手段,其中PSK为静态方式,简单快捷,不安全,而802.1x相对复杂,但非常安全。实际用于对数据进行加密的密钥,即实际参与算法公式的密钥是需要客户端和服务端经过四步握手来协商生成的,如下图可见协商过程的关键参数描述。

    实际加密易容的过程是一个比较复杂的运算,而协商出来的密钥分别参与单播、组播等报文的加密过程,形象来说,这个加密过程就是采用构建的复杂数据流对需要保护的数据部分进行耦合运算(如addition,shifts,XORs等),基本上面目全非,然后到接收端再通过类似的运算反向解析还原出来。加密易容技术使数据从终端出发后可以明目张胆地前行,即使被歹人截获,也不易被戳穿,从而实现了大隐于闹市的夙愿。

    二、 AP驿站至AC隘口,天然LWAPP隧道,人工QinQ筑洞,“黑暗中前行”

    数据在AP驿站除去易容装束,稍作歇息便要继续赶路程了。AP驿站至AC隘口之间修筑着一段LWAPP密道,尽可一路直达AC,不被发现。AP驿站分布凌乱,并无章法,有些AP驿站地处偏僻,所以存在很多AP通往AC的道路会复用现有线路,受制于已有线路的VLAN识别规定,或者基于节省VLAN的规划,AP需要隐匿已有的VLAN属性,外挂一个统一VLAN招牌,这种方式就是江湖中流行的QinQ技术。

    1、 天然VPN,遁形好密道-LWAPP。

    LWAPP是AC管理AP的一种实现方式,同时也是一种天然的VPN,因为这个VPN密道在AP上线向AC完成注册后就构筑好了,对于需要VPN部署的用户和分支机构来说,这无疑是一种再好不过的实现方式了,不管AP在物理上分布于哪里,只要注册到AC上,哪怕千山万水,一段LWAPP隧道自然屹立。

    LWAPP协议是基于UDP的协议,采用数据端口12222和控制端口12223进行监听,报文封装如下所示。

    LWAPP隧道的状况直接决定了数据传输的成功率,如果隧道发生塌方或者拥堵状况,数据便无法及时到达目的地,或者干脆惨死隧道之中。这里可以采用一条秘籍命令进行探测,该命令需在隐藏模式下进行,并要求AP为11N及以上类型,如下:

    ap-link-test {ipv4addr | ipv6addr } [udp-dstport] [udp-srcport] [pkt-length] [{burst rate | continue rate } time ]

    参数解释:

    udp-dstport : udp目的端口号,缺省12222(lwapp数据)

    udp-srcport : udp源端口号,缺省12222(lwapp数据)

    pkt-length : 报文长度,范围[60-2048],缺省128

    burst : burst 发送,一次性发送rate的报文,下一秒接着发送rate的报文

    continue :持续发送,以10ms为单位分批发送rate报文

    rate : 速率,burst范围[1-10000]pps,continue范围[1-100000]pps

    time:持续时长,范围[1-100]s

    burst和continue可选,缺省发送单个报文,此时AP返回携带上次重启原因、累计运行时间信息

    该命令不是简单的类似Ping操作,它是模拟LWAPP报文进行链路探测的,即可以探测LWAPP报文在AC到AP这段链路上的传输情况,因为从实际维护经验来看,AC到AP间可以ping通,但LWAPP报文无法到达AC,或者LWAPP大包无法到达AC,抑或LWAPP丢包引起AP掉线的情况偶有发生,这种情况可对症下药。另外,附带的返回信息可以有一定的增值应用 ,比如设置一定的流量压力(rate/time/burst/continue),测试AP到AC间的链路带宽。

    2、 VLAN隧道,巧夺天工QinQ。

    QinQ是VLAN嵌套的一种技术,除了可以增加VLAN属性标识信息量和节省VLAN资源外,还是一种简单实用的VPN技术,如下图所示,SW-2和无线控制的交换板可作为类似运营商PE角色的设备进行QinQ部署,实现数据在MAC层的隧道构筑。

    1)在SW-2交换机侧,QinQ部署在下连方向的端口上,进行双层VLAN标签的添加和摘去动作。示例如下(内层标签200,外层标签3000)

    interface Ethernet1/0/2

    port link-mode bridge

    port link-type hybrid

    port hybrid vlan 200 tagged

    port hybrid vlan 1 3000 untagged \\ 出端口方向摘去外层VLAN 3000标签

    description To_SW-1

    qinq enable

    qinq vid 3000 \\入口方向打VLAN 3000标签

    raw-vlan-id inbound 200 \\ 内层标签需是VLAN 200

    2)在交换板处部署QinQ于连接AC的端口上,这里需注意此端口一般为内连口,很多情况下需要配置端口聚合。交换板配置QinQ可以采用两种方式,一种方式在端口下直接配置,另一种方式采用QoS策略进行匹配下发,这种方式可以比较灵活,动态调整比较方便,但配置相对复杂。

    A、第一种方式:

    qinq vid 3000

    raw-vlan-id inbound 200

    description to_AC

    B、第二种方式:

    traffic classifier A200 operator and

    if-match customer-vlan-id 200

    #

    traffic behavior P3000

    nest top-most vlan-id 3000

    #

    qos policy qinq

    classifier A200 behavior P3000 \\ 对VLAN 200的流打VLAN3000的外层标签

    #

    interface Ten-GigabitEthernet4/0/1

    port link-mode bridge

    port link-type hybrid

    port hybrid vlan 1 3000 untagged \\ 出方向摘去VLAN3000标签

    qinq enable

    qos apply policy qinq inbound \\入方向打上VLAN3000标签

    port link-aggregation group 1

    description To_AC

    #

    interface Bridge-Aggregation1

    port link-type hybrid

    port hybrid vlan 1 3000 untagged

    qinq enable \\注意,聚合端口下也需要开启QinQ功能

    description To_AC

    三、 AC隘口往“光明顶”大路,有QinQ,有IACTP,有VPN族群

    终端数据一路风尘仆仆,行迹隐匿,终于安全抵达AC隘口,这时已经可以望见“光明顶”,前途宽敞起来。LWAPP隧道至AC已是终点,自然瓦解,而其他类型的隧道在AC处也可以终结或者转换形式,比如QinQ可以终结在AC上。由AC出发的新“大隐”之路逐渐宽敞起来,有多种选择,可以重新换上QinQ新装,也可以和其他联盟AC构建IACTP隧道管道,还可以冒险尽快找到最近的VPN族群入口。

    下面介绍一下换QinQ新装的部署方法,先终结QinQ报文,再进行QinQ重组操作。示例如下:

    1)开启QinQ终结功能,终结VLAN 3000,并指定该接口可以终结的VLAN报文的内层VLAN ID为200。开启此功能后,AC便可以发送QinQ格式的ARP报文,与AP进行二层通信。

    [AC] interface Vlan-interface 3000

    [AC-Vlan-interface3000] second-dot1q 200

    2)QinQ在AC终结后,数据报文不带VLAN标签,然后可以重新加装QinQ报文,不同的VLAN标签。配置射频卡,在AP上绑定服务模板时指定Client的业务VLAN为双VLAN(外层为VLAN2000,内层为VLAN100)。

    [AC-wlan-ap-ap1] radio 1

    [AC-wlan-ap-ap1-radio-1] service-template 1 vlan-id 2000 100

    [AC-wlan-ap-ap1-radio-1] radio enable

    [AC-wlan-ap-ap1-radio-1] return