PPPoE

简介:

PPPoE:PPP over Ethernet

  • PPPoE是对PPP的扩展,它可以使PPP协议应用于以太网

  • 把PPP帧封装到以太网帧中的链路层协议

  • 使以太网网络中的多台主机连接到远端的宽带接入服务器

  • 即Ethernet提供多台主机接入,PPP提供访问控制和计费

  • 具有适用范围广、安全性高、计费方便的特点

  • 组网结构采用Client/Server模型

PPPoE帧格式

image

Code 类型 说明
0x09 PADI PPPoE发现初始报文
0x07 PADO PPPoE发现提供报文
0x19 PADR PPPoE发现请求报文
0x65 PADS PPPoE发现会话确认报文
0xa7 PADT PPPoE发现终止报文
0x00 会话数据

PPPoE会话建立过程

image

阶段 说明
Discovery 获取对方以太网地址,以及确定唯一的PPPoE会话
Session 包含两部分:PPP协商阶段和PPP报文传输阶段
Terminate 会话建立以后的任意时刻,发送报文结束PPPoE会话
  1. 客户端通过广播发送PADI报文来发现接入服务器
  2. 所有的服务器在收到PADI报文后,将客户端请求的服务与自己能够提供的服务进行比较,如果可以提供,则单播回复PADO报文
  3. 客户端选择最先收到的PADO报文对应的服务器,并单播发送一个PADR报文
  4. 服务器生成唯一的PPPoE Session ID,并发送PADS报文给客户端,会话建立成功
  5. 进行PPP协商,成功后,就可以传输PPP数据
  6. PADT报文用于通知对端PPPoE会话结束

PPPoE配置

PPPoE Server配置

interface virtual-template 1		# 创建并配置虚拟接口模板VT
 remote address pool pppoe		# 为客户端分配IP地址
 ppp ipcp dns 114.114.114.114		# 为客户端分配DNS地址(可选)
 ip address 192.168.10.1 24
 ppp authentication-mode chap		# 认证方式
 quit

interface gigabitethernet 0/0/0
 pppoe-server bind virtual-template 1	# 绑定VT
 quit

# 配置地址池
ip pool pppoe
 network 192.168.10.0 mask 24
 gateway-list 192.168.10.1	# 只在DHCP上生效(可选)
 quit

# 配置认证账号
aaa
 local-user huawei password cipher huawei
 local-user huawei service-type ppp
 quit

# 配置会话最大数量
pppoe-server max-sessions total/local-mac		

# 验证会话
display pppoe-server session all/packet		
# 终结会话
reset pppoe-server all		

PPPoE Client 配置

# 创建并配置Dialer接口
interface dialer 1
 dialer user huawei				# 开启共享DCC并指定对端对端用户名
 dialer bundle 1				# 指定bundle,用于物理接口绑定
 ppp chap user huawei			# 配置认证
 ppp chap password cipher huawei
 ip address ppp-negotiate		# 配置IP地址
 ppp ipcp dns request			# 配置主动请求DNS服务器
 quit

# 接口上启用PPPoE Client功能,即拨号,默认自动拨号
interface gig 0/0/0
 pppoe-client dial-bundle-number 1 
 # [on-demand 按需拨号,有流量触发才拨号] [no-hostuniq 如果不想要主机识别码,可以加上这个参数]
 quit

# 配置NAT和路由
interface dialer 1
 nat outbound 2000
 quit
ip route-static 0.0.0.0 0 dialer 1		# 只能将下一跳接口写成dialer接口

# 配置ACL
acl 2000
 rule 10 permit 
 quit

# 验证会话
display pppoe-client session summary
# 终结会话
reset pppoe-client all

# 静态配置DNS服务
dns server ip-address	# 指定DNS服务器的IP地址
dns resolve		# 开启DNS查询
# 验证DNS服务
display dns server
reset dns dynamic-host

PPPoE会话维护

# 复位PPPoE会话
reset pppoe-server/pppoe-client
# 验证当前接入用户
display access-user
# 服务器强制断开PPPoE会话
aaa
 cut access-user user-id user-id
 quit

抓包验证

Discovery 过程
image
PPP 协商过程
image

一个问题:
抓包显示获取的DNS地址是反的,这在使用windows拨号时,会导致无法正确访问DNS服务器,而使用路由器拨号时,尽管抓包显示DNS地址是反的,但是路由器显示正常

image

image

Terminate 会话结束
image

posted @ 2022-10-05 00:38  未来的你!  阅读(491)  评论(0)    收藏  举报