1.PPP快速配置
(1)配置接口IP
R1:
sys
undo info-center enable
sysname R1
interface Serial4/0/0
# link-protocol ppp(Serial接口下默认为PPP链路类型)
ip address 12.1.1.1 255.255.255.0
R2:
sys
undo info-center enable
sysname R2
interface Serial4/0/0
ip address 12.1.1.2 255.255.255.0
(2)抓取PPP数据报文
先在R1的4/0/0接口点击开始抓包,链路类型选择PPP,接着在R1上ping R2
抓包可以分析到报文的二层通过PPP协议进行封装,三层不会发生改变。
2. 早期广域网技术概述
2.1前言
随着经济全球化与数字化变革加速,企业规模不断扩大,越来越多的分支机构出现在不同的地域。每个分支的网络被认为一个LAN(Local Area Network,局域网),总部和各分支机构之间通信需要跨越地理位置。因此,企业需要通过WAN(Wide Area Network,广域网)将这些分散在不同地理位置的分支机构连接起来,以便更好地开展业务。
广域网技术的发展,伴随着带宽不断的升级:早期出现的X.25只能提供64 kbit/s的带宽,其后DDN(Digital Data Network,数字数据网)和FR(Frame Relay,帧中继)提供的带宽提高到2Mbit/s,SDH(Synchronous Digital Hierachy,同步数字结构)和ATM(AsynchronousTransfer Mode,异步传输模式)进一步把带宽提升到10 Gbit/s,最后发展到当前以IP为基础的10 Gbit/s甚至更高带宽的广域网络。
2.2什么是广域网
广域网是连接不同地区局域网的网络,通常所覆盖的范围从几十公里到几千公里。它能连接多个地区、城市和国家,或横跨几个洲提供远距离通信,形成国际性的远程网络。
广域网与局域网区别:
局域网是一种覆盖地理区域比较小的计算机网络。
广域网是一种通过租用ISP网络或者自建专用网络来构建的覆盖地理区域比较广的计算机网络。
局域网:
广域网:
2.3早期广域网技术介绍
早期广域网与局域网的区别在于数据链路层和物理层的差异性,在TCP/IP参考模型中,其他各层无差异。
2.4广域网络设备角色介绍
广域网络设备基本角色有三种,CE(Customer Edge,用户边缘设备)、PE (ProviderEdge,服务提供商边缘设备) 和P(Provider ,服务提供商设备)。
具体定义是:
(1)CE:用户端连接服务提供商的边缘设备。CE连接一个或多个PE,实现用户接入。
(2)PE:服务提供商连接CE的边缘设备。PE同时连接CE和P设备,是重要的网络节点。
(3)P:服务提供商不连接任何CE的设备。
2.5早期广域网技术的应用
早期的广域网技术主要是针对不同的物理链路类型,在数据链路层进行不同的二层封装。在CE与PE之间常用的广域网封装协议有PPP/HDLC/FR等,用于解决用户接入广域网的长距离传输问题。在ISP内部常用的广域网协议主要是ATM,它用于解决骨干网高速转发的问题。
3. PPP 协议原理
3.1 PPP协议概述
PPP(Point-to-Point Protocol,点到点协议)是一种常见的广域网数据链路层协议,主要用于在全双工的链路上进行点到点的数据传输封装。
PPP提供了安全认证协议族PAP(Password Authentication Protocol,密码验证协议)和CHAP(ChallengeHandshake Authentication Protocol,挑战握手认证协议)。
PPP协议具有良好的扩展性,例如,当需要在以太网链路上承载PPP协议时,PPP可以扩展为PPPoE。
PPP协议提供LCP(Link Control Protocol,链路控制协议),用于各种链路层参数的协商,例如最大接收单元,认证模式等。
PPP协议提供各种NCP(Network Control Protocol,网络控制协议),如IPCP(IP Control Protocol ,IP控制协议),用于各网络层参数的协商,更好地支持了网络层协议。
3.2 PPP链路建立流程
PPP链路的建立有三个阶段的协商过程,链路层协商、认证协商(可选)和网络层协商。
(1)链路层协商:通过LCP报文进行链路参数协商,建立链路层连接。
(2)认证协商(可选):通过链路建立阶段协商的认证方式进行链路认证。
(3)网络层协商 :通过NCP协商来选择和配置一个网络层协议并进行网络层参数协商。
3.3 PPP链路接口状态机
PPP协商由链路两端的接口完成。接口的状态表示了协议的协商阶段。
3.4 LCP报文格式
PPP报文可由Protocol字段标识不同类型的PPP报文。例如,当Protocol字段为0xC021时,代表是LCP报文。此时又由Code字段标识不同类型LCP报文,如下表所示。
3.5 LCP协商过程 - 正常协商
LCP协商由不同的LCP报文交互完成。协商由任意一方发送Configure-Request报文发起。如果对端接收此报文且参数匹配,则通过回复Configure-Ack响应协商成功。
3.6LCP协商过程 - 参数不匹配
3.7LCP协商过程 - 参数不识别
4. PPP的 PAP 和 CHAP 认证
4.1 PPP认证模式 - PAP
链路协商成功后,进行认证协商(此过程可选)。认证协商有两种模式,PAP和CHAP。
PAP认证双方有两次握手。协商报文以明文的形式在链路上传输。
4.2 PPP认证模式 - CHAP
CHAP认证双方有三次握手。协商报文被加密后再在链路上传输。
5. PPP 地址协商
5.1 NCP协商 - 静态IP地址协商
PPP认证协商后,双方进入NCP协商阶段,协商在数据链路上所传输的数据包的格式与类型。以常见的IPCP协议为例,它分为静态IP地址协商和动态IP地址协商。
静态IP地址协商需要手动在链路两端配置IP地址。
5.2 NCP协商 - 动态IP地址协商
动态IP地址协商支持PPP链路一端为对端配置IP地址。
6. PPP基础配置命令
(1)配置接口封装PPP协议
[Huawei-Serial0/0/0] link-protocol ppp
在接口视图下,将接口封装协议改为ppp,华为串行接口默认封装协议为ppp。
(2)配置协商超时时间间隔
[Huawei-Serial0/0/0] ppp timer negotiate seconds
在PPP LCP协商过程中,本端设备会向对端设备发送LCP协商报文,如果在指定协商时间间隔内没有收到对端的应答报文,则重新发送。
6.1 PAP认证配置命令
(1)配置验证方以PAP方式认证对端
[Huawei-aaa] local-user user-name password { cipher | irreversible-cipher } password
[Huawei-Serial0/0/0] ppp authentication-mode pap
配置验证方以PAP方式认证对端,首先需要通过AAA将被验证方的用户名和密码加入本地用户列表,然后选择认证模式。
(2)配置被验证方以PAP方式被对端认证
[Huawei-Serial0/0/0] ppp pap local-user user-name password { cipher | simple } password
配置本地被对端以PAP方式验证时,本地发送PAP用户名和口令。
6.2 CHAP认证配置命令
(1)配置验证方以CHAP方式认证对端
[Huawei-aaa] local-user user-name password { cipher | irreversible-cipher } password
[Huawei-aaa] local-user user-name service-type ppp
(2)配置被验证方以CHAP方式被对端认证
[Huawei-Serial0/0/0] ppp chap user user-name
[Huawei-Serial0/0/0] ppp chap password { cipher | simple } password
配置本地用户名,配置本地被对端以CHAP方式验证时的口令。
7. 配置举例
7.1 PAP认证配置
实验要求:
a.在R1与R2之间的PPP链路上启用PAP认证功能;
b.将R1配置为认证方;
c.将R2配置为被认证方。
(1)接口IP已配置
R1:
R2:
(2)配置认证方R1
aaa #添加待认证用户信息
local-user admin password cipher admin123
local-user admin service-type ppp #指定认证用户业务类型
interface Serial 4/0/0
ppp authentication-mode pap #指定认证模式为PAP
(3)配置被认证方R2
interface Serial 4/0/0
ppp pap local-user admin password cipher admin123 #添加PPP认证的用户信息
(4)抓包验证,在R1的S4/0/0接口,点击开始抓包,然后在R1的S4/0/0进行关闭再启动;
抓包可以看到PPP通过PAP的认证协商的过程,可以看出PAP认证是明文的形式。
7.2 CHAP认证配置
实验要求:
a.在R1与R2之间的PPP链路上启用CHAP认证功能;
b.将R1配置为认证方;
c.将R2配置为被认证方。
基于7.1的实验配置基础上进行修改配置命令,接口IP是已经配置好。
(1)R1的配置如下:
aaa #添加待认证用户信息
local-user admin password cipher admin123
local-user admin service-type ppp #指定认证用户业务类型
quit
interface Serial 4/0/0
ppp authentication-mode chap #指定认证模式为CHAP
quit
(2)R2的配置如下:
interface Serial 4/0/0
ppp chap user admin
ppp chap password cipher admin123
(3)抓包验证,在R1的S4/0/0接口,点击开始抓包,然后在R1的S4/0/0进行关闭再启动;
抓取报文可以看到CHAP进行三次握手,协商报文被加密后再在链路上传输。
8. PPPOE 概述
8.1什么是PPPoE
PPPoE(PPP over Ethernet,以太网承载PPP协议)是一种把PPP帧封装到以太网帧中的链路层协议。PPPoE可以使以太网网络中的多台主机连接到远端的宽带接入服务器。
PPPoE集中了PPP和Ethernet两个技术的优点。既有以太网的组网灵活优势,又可以利用PPP协议实现认证、计费等功能。
8.2 PPPoE应用场景
PPPoE实现了在以太网上提供点到点的连接。PPPoE客户端与PPPoE服务器端之间建立PPP会话,封装PPP数据报文,为以太网上的主机提供接入服务,实现用户控制和计费,在企业网络与运营商网络中应用广泛。
PPPoE的常见应用场景有家庭用户拨号上网、企业用户拨号上网等。
8.3 PPPoE会话建立
PPPoE的会话建立有三个阶段,PPPoE发现阶段、PPPoE会话阶段和PPPoE终结阶段。
8.4 PPPoE报文
PPPoE会话的建立通过不同的PPPoE报文交互实现。PPPoE报文结构及常见的报文类型如下所示:
8.5 PPPoE发现阶段
PPPoE协议发现有四个步骤:客户端发送请求、服务端响应请求、客户端确认响应和建立会话。
8.6 PPPoE会话阶段
PPPoE会话阶段会进行PPP协商,分为LCP协商、认证协商、NCP协商三个阶段。
8.7PPPoE会话终结阶段
当PPPoE客户端希望关闭连接时,会向PPPoE服务器端发送一个PADT报文,用于关闭连接。
同样,如果PPPoE服务器端希望关闭连接时,也会向PPPoE客户端发送一个PADT报文。
9. PPPOE 基础配置
(1)通过拨号规则来配置发起PPPoE会话的条件
[Huawei] dialer-rule
(2)配置拨号接口用户名,此用户名必须与对端服务器用户名相同
[Huawei-Dialer1]dialer user username
(3)将接口置于一个拨号访问组
[Huawei-Dialer1]dialer-group group-numbe
(4)指定当前拨号接口使用的拨号绑定
[Huawei-Dialer1]dialer-bundle number
(5)将物理端口与dialer-bundle进行绑定
[Huawei-Ethernet0/0/0]pppoe-client dial-bundle-number numbe
9.1配置实例 - PPPoE客户端
实验要求:
将R1设置为PPPoE客户端,R2为PPPoE服务器端;
在R1上配置PPPoE客户端拨号接口;
在R1上配置PPPoE客户端拨号接口的认证功能;
R1上的拨号接口获取PPPoE服务器端分配的IP地址;
R1通过拨号接口可以访问服务器端。
(1)创建拨号接口并配置被认证方用户名和密码:
[R1]dialer-rule
[R1-dialer-rule]dialer-rule 1 ip permit
[R1-dialer-rule]quit
[R1]interface dialer 1
[R1-Dialer1] dialer user enterprise
[R1-Dialer1] dialer-group 1
[R1-Dialer1] dialer bundle 1
[R1-Dialer1] ppp chap user admin
[R1-Dialer1] ppp chap password cipher admin123
[R1-Dialer1] ip address ppp-negotiate
(2)将拨号接口绑定出接口:
[R1]interface GigabitEthernet 0/0/1
[R1-GigabitEthernet0/0/1]pppoe-client dial-bundle-number1
[R1-GigabitEthernet0/0/1]quit
(3)配置本端到达服务器端的缺省路由:
[R1]ip route-static 0.0.0.0 0.0.0.0 dialer 1
9.2配置实例 - PPPoE服务器端
实验要求:
在PPPoE服务器端上创建为客户端分配IP的地址池;
PPPoE服务器端完成PPPoE客户端认证并分配合法的 IP地址。
(1)创建地址池与虚拟模板:
[R2]ip pool pool1 #创建地址池,指定分配的IP地址和网关
[R2-ip-pool-pool1]network 192.168.1.0 mask 255.255.255.0
[R2-ip-pool-pool1]gateway-list 192.168.1.254
[R2]interface Virtual-Template 1 #创建虚拟模板接口
[R2-Virtual-Template1]ppp authentication-mode chap
[R2-Virtual-Template1]ip address 192.168.1.254 255.255.255.0
[R2-Virtual-Template1]remote address pool pool1
(2)将物理接口与虚拟模板绑定:
[R2]interface GigabitEthernet 0/0/0
[R2-GigabitEthernet0/0/0]pppoe-server bind virtual-template1
[R2-GigabitEthernet0/0/0]quit
(3)创建访问用户:
[R2]aaa #添加认证用户信息
[R2-aaa]local-user admin password cipher admin123
[R2-aaa]local-user huawei1 service-type ppp
9.3配置验证
(1)查看拨号接口详细信息---display interface Dialer 1
(2)查看PPPoE-client会话初始状态信息--- display pppoe-client session summary
(3)查看PPPoE-client会话建立状态信息--- display pppoe-client session summary
10. 广域网技术的发展
10.1广域网技术的历史演进
早期广域网常用的数据链路层协议包括PPP、HDLC和ATM等。后期随着全网IP化的演进,基于IP技术的Internet快速普及,但基于最长匹配算法的IP技术必须使用软件查找路由,转发性能低下,因此IP技术的转发性能成为当时限制网络发展的瓶颈。
MPLS(Multiprotocol Label Switching,多协议标记交换)最初是为了提高路由器的转发速度而提出的。与传统IP路由方式相比,它在数据转发时,只在网络边缘解析IP报文头,后续节点只基于标签转发,而不用在每一跳都解析IP报文头,减少软件处理流程节约了处理时间。
随着路由器性能的提升,路由查找速度已经不是阻碍网络发展的瓶颈。这使得MPLS在提高转发速度方面不再具备明显的优势。但是MPLS支持多层标签和转发平面面向连接的特性,使其在VPN(Virtual PrivateNetwork,虚拟专用网)、TE(Traffic Engineering,流量工程)、QoS(Quality of Service,服务质量)等方面得到广泛应用。
10.2传统IP路由转发
传统的IP转发采用的是逐跳转发。数据报文经过每一台路由器,都要被解封装查看报文网络层信息,然后根据路由最长匹配原则查找路由表指导报文转发。各路由器重复进行解封装查找路由表和再封装的过程,所以转发性能低。
传统IP路由转发的特点:
所有路由器需要知道全网的路由。
传统IP转发是面向无连接的,无法提供较好的端到端QoS保证。
10.3 MPLS标签转发
MPLS是一种IP骨干网技术。
MPLS是一种隧道技术,在IP路由和控制协议的基础上,向网络层提供面向连接的交换。能够提供较好的QoS保证。
MPLS标签指导报文转发的过程中,使用本地标签查找替代传统IP转发的路由查找,大大提高转发效率。
MPLS转发过程中使用的标签,既可以通过手工静态配置,又可以通过动态标签分发协议分配。
10.4 MPLS转发存在的问题
MPLS的标签分发有静态和动态两种方式,均面临着不同的问题:
静态标签分发为手工配置。随着网络规模不断的扩大,网络拓扑易变化,静态手工配置标签不适应大型网络需求。
动态标签分发的问题,一方面在于部分动态标签协议本身并无算路能力,需依赖IGP进行路径计算,同时控制面协议复杂,设备之间需要发送大量的消息来维持邻居及路径状态,浪费了链路带宽及设备资源。另一方面部分标签分发协议虽然支持流量工程,但是配置复杂,不支持负载分担,需要大量协议报文维护路径正常工作;同时每台设备都是独立存在,只知道自己的状态,设备之间需要交互信令报文,也会浪费链路带宽及设备资源。
10.5 Segment Routing简介
为解决传统IP转发和MPLS转发的问题,业界提出了SR (Segment Routing,分段路由)。SR的转发机制有很大改进,主要体现在以下几个方面:
(1)基于现有协议进行扩展:
扩展后的IGP/BGP具有标签分发能力,因此网络中无需其他任何标签分发协议,实现协议简化。
(2)引入源路由机制:
基于源路由机制,支持通过控制器进行集中算路。
(3)由业务来定义网络:
业务驱动网络,由应用提出需求(时延、带宽、丢包率等),控制器收集网络拓扑、带宽利用率、时延等信息,根据业务需求计算显式路径。
10.5.1 Segment Routing转发原理 (1)
SR将网络路径分成一个个的段(Segment),并且为这些段分配SID(Segment ID)。
SID的分配对象有两种,转发节点或者邻接链路。本例中转发节点SID 1600X,X为路由器编号;邻接链路SID 160XX,XX表示链路两端的节点编号。
10.5.2 Segment Routing转发原理 (2)
邻接链路和网络节点的SID有序排列形成段序列(Segment List),它代表一条转发路径。SR由源节点将段序列编码在数据包头部,随数据包传输。SR的本质是指令,指引报文去哪里和怎么去。
10.5.3 SR的部署方式
SR部署分为有控制器部署和无控制器部署。控制器配合方式由控制器收集信息,预留路径资源和计算路径,最后将结果下发到头结点,是更为推荐的部署方式。
10.5.4 Segment Routing的应用
SR可以简易的指定的报文转发路径,在现网中可以为不同业务定义不同的路径。例如本例定义了数据下载、视频和语音三条显式路径,实现了业务驱动网络。设备由控制器纳管,支持路径实时快速发放。