【思科】PPPoE 配置 + 概述和原理 + NAT

在这里插入图片描述

为什么有PPPoE协议?

①PPP协议最经济接入方式是用以太网
所以把PPP帧封装到以太网帧中的链路层协议,我们可以在以太网上抓到PPP报文

②PPP协议又能提供良好的访问控制计费功能

结合以上两点,所以就有了PPPoE协议

PPPoE利用以太网将大量主机组成网络
通过一个远端接入设备连入因特网,并运用PPP协议对接入的每个主机进行控制,具有适用范围广、安全性高、计费方便的特点。

PPPoE拨号的工作原理

华为产品文档

PPPoE 五个报文

① PADI : PPPoE Active Discovery Initial
PPPoE Client 通过广播发送的报文,用于搜索并请求可用的PPPoE服务器
内容:客户端的MAC地址、服务名称标识符,以及其他可选参数

② PADO : PPPoE Active Discovery Offer
PPPoE Server 发送的单播报文,作为对PADI报文的响应
其中每个响应提供了服务器的MAC地址、服务名称标识符等信息

③ PADR : PPPoE Active Discovery Request
由客户端发送给选择的PPPoE服务器的报文,用于请求建立连接
内容包括 客户端和服务器的MAC地址PPPoE会话ID(用于标识该连接),以及其他可选参数

④ PADS : PPPoE Active Discovery Session-confirmation
由PPPoE服务器发送给客户端的报文,用于确认连接的建立
报文中包含了客户端和服务器的MAC地址PPPoE会话ID等信息

⑤ PADT : PPPoE Active Discovery Terminate
它是由任一一方(客户端或服务器)发送的报文,用于终止连接
报文中包含了正在终止连接的一方的MAC地址PPPoE会话ID

PPPoE 三个阶段

① Discovery 阶段

Discovery阶段由四个过程组成。

  1. PPPoE Client 广播发送PADI(PPPoE Active Discovery Initiation)报文,查找可用的PPPoE服务器。

  2. PPPoE Server 收到PADI报文后,如果有可用的服务,则会向客户端单播发送PADO(PPPoE Active Discovery Offer)报文,其中可能包含多个PPPoE服务器的响应。

  3. PPPoE Client 选择最先收到的 PADO 报文对应的 PPPoE Server 做为自己的PPPoE Server,并向所选的PPPoE服务器单播发送一个PADR(PPPoE Active Discovery Request)报文。

  4. PPPoE Server产生一个唯一的会话ID(Session ID),标识和PPPoE Client的这个会话,通过发送一个PADS(PPPoE Active Discovery Session-confirmation)报文把会话ID发送给PPPoE Client,会话建立成功后便进入PPPoE Session阶段在这里插入图片描述

完成之后通信双方都会知道PPPoE的Session_ID以及对方的以太网地址,它们共同确定了唯一的PPPoE Session。

Discovery阶段的 报文交互过程
在这里插入图片描述
在这里插入图片描述

② Session 阶段

PPPoE Session阶段可划分为两部分
一是PPP协商阶段,二是PPP数据传输阶段
PPPoE Session上的PPP协商和普通的PPP协商方式一致,分为LCP、认证、NCP三个阶段

  1. LCP阶段
    主要完成建立、配置和检测数据链路连接。

  2. 认证协商
    认证协议类型由LCP协商结果(CHAP或者PAP)决定,最常用的是PAP认证

  3. NCP阶段
    NCP是一个协议族,用于配置不同的网络层协议,常用的是IP控制协议(IPCP)
    IPCP 主要负责协商用户的IP地址和DNS服务器地址

PPPoE Session的PPP协商成功后,就可以承载PPP数据报文
在PPPoE Session阶段所有的以太网数据包都是单播发送的

Session阶段的 报文交互过程
在这里插入图片描述

在这里插入图片描述

③ Terminate 阶段

PPP通信双方可以使用PPP协议自身来结束PPPoE会话
无法使用PPP协议结束会话时可以使用PADT(PPPoE Active Discovery Terminate)报文。

进入PPPoE Session阶段后
PPPoE Client和PPPoE Server 都可以通过发送PADT报文的方式来结束PPPoE连接

PADT数据包可以在 会话建立以后的任意时刻单播发送
在发送或接收到PADT后,就不允许再使用该会话发送PPP流量了

Terminate阶段的 报文交互过程
在这里插入图片描述
在这里插入图片描述

配置

拓扑

在这里插入图片描述

ISP配置

PPPOE 服务端

记忆口诀:
① 先创建用户库
② 再创建虚拟接口

  1. 先配地址
  2. LCP
  3. 认证
  4. NCP

③ 用BBA组与之关联
④ 进入物理接口,进行关联

ISP(config)#username cisco password ccie
ISP(config)#ip local pool R1 202.101.1.10 

ISP(config)#int virtual-template 1                    --- 创建虚拟接口
ISP(config-if)#no shutdown 
ISP(config-if)#ip address 202.101.1.1 255.255.255.0   --- 需要在虚拟接口上配置IP地址,而不是在物理接口上
ISP(config-if)#encapsulation ppp                 --- LCP,链路层协商,在虚拟接口封装PPP协议
ISP(config-if)#ppp authentication pap            --- 认证协商,PAP
ISP(config-if)#peer default ip address pool R1   --- NCP,网络层协商,用来下发IP地址
ISP(config-if)#ppp timeout idle ?                --- 开启计时功能
  <1-4294967>  Idle timeout value in seconds
ISP(config-if)#ex

ISP(config)#bba-group pppoe R1                   --- 创建BBA组
ISP(config-bba-group)#virtual-template 1         --- 将刚才创建的虚拟接口1 放在BBA组里面
ISP(config-bba-group)#ex

ISP(config)#int e0/0
ISP(config-if)#no shutdown 
ISP(config-if)#pppoe enable group R1             --- 用BBA组,使虚拟接口与物理接口关联
ISP(config-if)#ex

DNS 服务器

ISP(config)#int loobpack 1                --- 创建一个环回口,当做外网地址
ISP(config-if)#ip address 8.8.8.8 255.255.255.255
ISP(config-if)#ex

ISP(config)#ip dns server                 ---  将ISP作为一个DNS的服务器
ISP(config)#ip host www.baidu.com 8.8.8.8 ---  设定静态主机(DNS)映射,访问 www.baidu.com 它会进行域名解析服务,将域名转换为 8.8.8.8

R1配置

PPPOE 客户端

记忆口诀:
① 先创建拨号口

  1. LCP
  2. 认证(PAP、CHAP)
  3. 下发默认地址
  4. NCP
  5. 创建拨号池

②进入物理接口与拨号池关联

R1(config)#int dialer 1                 --- 创建拨号口
R1(config-if)#no shutdown 
R1(config-if)#encapsulation ppp         --- 链路层协商,将接口的封装协议设置为PPP协议
R1(config-if)#ppp pap sent-username cisco password ccie  --- 认证协商,PAP
R1(config-if)#ppp ipcp route default    --- 下发一条默认路由,指向ISP
R1(config-if)#ip address negotiated     --- 网络协商,获取上网的IP地址
R1(config-if)#dialer pool 1             --- 创建拨号池
R1(config-if)#ex

R1(config)#int e0/0 
R1(config-if)#no shutdown 
R1(config-if)#pppoe-client dial-pool-number 1  --- 用拨号池,将拨号口和物理接口关联
R1(config-if)#ex

DHCP 服务端

R1(config)#int e0/1
R1(config-if)#no shutdown    
R1(config-if)#ip address 192.168.10.254 255.255.255.0
R1(config-if)#ex

R1(config)#ip dhcp pool PC
R1(dhcp-config)#network 192.168.10.0 255.255.255.0
R1(dhcp-config)#default-router 192.168.10.254
R1(dhcp-config)#dns 8.8.8.8

R1(config)#ip dhcp excluded-address 192.168.10.254 

NAT(PAT)配置

这里,一定要注意
是要把 拨号口设置为NAT的外接口而不是物理接口!!!

R1(config)#int dialer 1             ---- 特别注意,是要把拨号口设置为NAT的外接口
R1(config-if)#ip nat outside 
R1(config-if)#ex

R1(config)#int e0/1
R1(config-if)#ip nat inside 
R1(config-if)#ex

R1(config)#access-list 1 permit 192.168.10.0 0.0.0.255   --- 配置ACL,匹配感兴趣流量
R1(config)#ip nat inside source list 1 interface dialer 1 overload   --- 这边也是一样

PC配置

获取IP地址

PC(config)#no ip routing          --- 关闭路由功能,我是用路由器模拟PC
PC(config)#int e0/0
PC(config-if)#no shutdown 
PC(config-if)#ip address dhcp     --- 用DHCP方式获取IP地址
PC(config-if)#ex

PC(config)#                       --- 获取成功
*Aug  4 04:10:22.773: %DHCP-6-ADDRESS_ASSIGN: Interface Ethernet0/0 assigned DHCP address 192.168.10.1, mask 255.255.255.0, hostname PC

检验NAT是否配置成功

PC能 ping 到 ISP 的 域名网址 ,表明内网可以访问外网,NAT配置成功
在这里插入图片描述

拨号成功

当弹出这两条日志的时候,就说明拨号成功,成功获得到上网地址
在这里插入图片描述
在这里插入图片描述

查看IP地址表,发现已经分配到上网地址了
在这里插入图片描述
查看路由表,存在一条默认路由,并且指向ISP
在这里插入图片描述

  • 13
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张白夕

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值