PPPoE介绍及拨号过程
一、简述pppoe
PPP over Ethernet,数字用户线路DSL(Digital Subscriber Line)是以电话线为传输介质的传输数字信号的技术,人们通常把所有的DSL技术统称为xDSL,x代表不同种类的数字用户线路技术。目前比较流行的宽带接入技术为ADSL,ADSL是非对称DSL技术,使用是PPPoE协议。
PPPoE协议通过在以太网上提供点到点的连接,建立PPP会话,使的以太网中的主机能够连接到远端的宽带接入服务器上。PPPoE具有使用范围广、安全性高、计费方便等特点。
PPP为二层协议,Ethernet为二层协议,PPPoE为将Ethernet跑在PPP的协议之上,PPP报文具有认证功能,所以将PPP封装以太网包中,让PPP协议在以太网环境中对设备进行认证、计费等功能,而PPP不支持广播发送的能力,所以不能完成PPOE认证的过程,所以将PPP跑在Enternet之上,使用PPP进行认证和IP地址的分发,使用Enternet技术实现广播的发送。
二、PPPoE拨号过程

PADI(初始化):由客户端广播发送,用于发现ISP的网络服务提供点(POP)找到DSL访问集中器(DSL-AC),这个报文中包含发送者的MAC地址。
PADO(Offer):由服务器单播发送给客户端。一旦用户计算机发送了PADI报文,DSL-AC就会使用PADI中提供的MAC地址回复一个PADO报文。PADO报文中包含了DSL-AC的MAC地址、名称以及服务名。//如果多于一个POP的DSL-AC回复了PADO报文,客户端就使用提供的名称和服务来从中选择一个。
PADR(Request):由客户端单播发送到服务器,当客户端收到一个来自DSL-AC的可接受的PADO报文后,就会发送一个PADR报文给DSL-AC,用来确认接受发送PADO报文的DSL-AC所提供的PPPoE连接。
PADS(会话确认):由服务器单播发送给客户端,对PADR进行确认,并在其中携带一个会话ID。计算机与此DSL-AC的连接就完整创建了。
PADT(终止):可由任意一方发送,用于终止连接。
PPPOE会话阶段主要分为LCP协商阶段、认证阶段、IPCP阶段(分配IP)等,在这些阶段顺利完成后,就可以进行数据传输。
三、PPPOE会话分为三个阶段:
① 发现阶段:
获取对方以太网地址,以及确定唯一的PPPoE会话
② 会话阶段:
第一部分:PPP协商阶段
第二部分:PPP报文传输阶段
③ 会话终结阶段:
会话建立以后的任意时刻,发送报文结束PPPoE会话
(1)发现阶段:
PPPOE发现阶段的第一步,Clint客户端寻找Server服务器,获取服务器的IP地址,建立一条PPPoE会话,并生成Session ID值,用于唯一标识一条PPPoE会话。
① 第一阶段:
Clint使用PADI报文,也就是由用户侧首先发送这样一个报文。Clint是以广播的方式发送这个报文,所以该报文所对应的以太网帧的目的地址域应填充为全1,而源地址域填充Clint的MAC地址。广播包可能会被多个Server接收到。
② 第二阶段:
PPPOE发现阶段的第二步,也即是由Server回应各Clint发送的PADI报文,此时该报文所对应的以太网帧的源地址填充Server的MAC地址,而目的地址则填充从PADI中所获取的Clint的MAC地址。此阶段为Server使用PADO报文响应Clint。
③ 第三阶段:
PPPOE发现阶段的第三步,也即是由Clint向访问服务器发送单播的请求报文。当Clint收到PADO报文后,会使用PADR进行请求Session ID。
④ 第四阶段:
PPPOE发现阶段的第四步,由Server发送PADS报文用于回复Clint的PADR,报文中包含Session ID,用于标识Clint和Server之间的一条点到点回话。
(2)会话阶段:
LCP阶段:
a)工作方式是SP(Single-Link PPP,单链路连接)还是MP(Multilink PPP,多链路连接)
b)最大接收单元MRU(Maxnum Receive Unit,最大的接收数据包大小)
c)验证方式(PAP或CHAP必须一致)和魔术字(magic number)等字段
认证阶段:
开始CHAP或PAP验证,用于验证用户名和密码是否合法
NCP阶段:
PPP阶段进行NCP协商。通过NCP协商来选择和配置一个网络层协议进行网络层参数协商。只有相应的网络层协议协商成功后,该网络层协议才可以通过这条PPP链路发送报文,NCP协商包括LPCP(IP Control Protocol,IP地址的获取)、MPLSCP(MPLS Control Protocol)等协商。
(3)会话终结阶段:
会话建立以后的任意时刻,发送PADT报文用于结束PPPoE的会话。
PPPOE拨号之一:Cisco 路由器PPPOE拨号配置
拓扑

在工作中,很有可能遇到的外网接入方式就是ADSL拨号了,虽然看着简单,但是这里讲讲Cisco路由器上面的一些注意事项与配置。
1、接口下调用PPPOE-client
Router-pppoe_client(config)#interface e0/0 //接外网接口Router-pppoe_client(config-if)#pppoe-client dial-pool-number 1Router-pppoe_client(config-if)#no shutdown
2、PPPOE-client接口的配置
Router-pppoe_client(config)#interface dialer 1Router-pppoe_client(config-if)#encapsulation ppp 【在思科上面默认为HDLC】Router-pppoe_client(config-if)#ip address negotiated 【地址通过协商获取】
2、可能遇到的问题
在实际环境中,不清楚运营商那边使用的是PAP还是CHAP认证,如果只配置了一种可能导致拨号失败,这里给出一种方法,可以完美解决这个问题。
Router-pppoe_client(config-if)#ppp authentication chap pap callin然后输入pap跟chap两种方式,这样无论运营商是哪种都可以成功。
Router-pppoe_client(config-if)#ip mtu 1492Router-pppoe_client(config-if)#ip tcp adjust-mss 1420Router-pppoe_client(config-if)#dialer pool 1 【跟接口输入的nmuber号一致】至此,ADSL的配置完毕了,如果帐号密码与接口没错的话,就可以获取到IP了。
3、查看是否获取到了IP

可以看到虚拟接口已经起来,也获取到了IP地址。
4、NAT与路由配置
Router-pppoe_client(config)#ip route 0.0.0.0 0.0.0.0 dialer 1 permanent //实际环境中可能存在三层交换机,这时候需要写回程路由该permanent参数可以让默认路由永久存在,可以根据需求来决定是否定义
Router-pppoe_client(config)#ip access-list extended natRouter-pppoe_client(config-ext-nacl)#permit ip 192.168.1.0 0.0.0.255 anyRouter-pppoe_client(config)#ip nat inside source list nat interface dialer 1 overload
Router-pppoe_client(config)#int lo 0 //说明,这个是演示,所以采用的是环回口,实际环境调用在内网接口就可以Router-pppoe_client(config-if)#ip nat insideRouter-pppoe_client(config-if)#exit
Router-pppoe_client(config)#int dialer 1Router-pppoe_client(config-if)#ip nat outside说明:这里用环回口来做测试,另外nat的调用是在dialer口,而不是物理接口。
5、测试


可以正常访问外网了。
容易遇到的问题
(1)一些网站或者应用打开慢以及打不开的情况,这个很有可能是MTU与TCP MSS导致,可以多尝试几个值来达到比较理想的效果。Router-pppoe_client(config)#interface dialer 1Router-pppoe_client(config-if)#ip mtu 1492 //范围建议在1000~1492之间Router-pppoe_client(config-if)#ip tcp adjust-mss 1420 //范围在1000~1452之间(2)一些小企业或者SOHO级别的网络可能申请的是民用的拨号线路,那这个时候有可能自己用电脑先拨入测试效果,然后发现在路由器上面怎么都拨入不了,那很有可能是运营商那边绑定了,需要打电话过去松绑。(3)ADSL有可能采用私网地址分配,所以在申请的时候需要考虑是否需要做映射服务出去或者一些VPN拨入,在申请的时候需要跟对方说明清楚。(包括80端口是否可以用)
如果大家有任何疑问或者文中有错误跟疏忽的地方,欢迎大家留言指出,博主看到后会第一时间修改,谢谢大家的支持,更多技术文章尽在网络之路Blog,版权归网络之路Blog所有,原创不易,侵权必究,觉得有帮助的,关注转发一波谢谢。
上一篇回顾
DHCP:(10)H3C DHCP 特性 ARP安全控制
下一篇学习
PPPOE拨号之二:Cisco ASA防火墙 PPPOE拨号
相关问答
ADSL虚拟拨号(PPPoE)是什么意思和作用?
pppoe是point-to-pointprotocoloverethernet的简称,可以使以太网的主机通过一个简单的桥接设备连到一个远端的接入集中器上。通过pppoe协议,远端接入设备能够...
手机pppoeadsl虚拟拨号方式设置?
步骤1/6首先,打开手机浏览器并输入路由器的IP地址并输入密码进入路由器设置页面;步骤2/6进入后会自动进入【设置向导】,点击设置向导【下一步】;步骤3/6...
移动光猫pppoe拨号设置?
设置移动光猫的PPPoE拨号连接步骤:连接电脑与光猫的LAN口,打开浏览器。在浏览器地址栏输入光猫的IP地址(通常是192.168.1.1)并回车。输入光猫的登录用户名...
pppoe如何设置拨号拨到自己设置的固定IP-懂得
呃,貌似PPPoe拨号分到什么IP地址是电信说了算吧。。。。宽带拨号连接的属性-网络-tcp/ip-使用下面的ip地址?没试过,lz自己试试。自己乱整一下看看...
pppoe和自动获取选哪个?
pppoe和自动获取都是拨号上网的方式,两个没有太大区别,都可以用pppoe和自动获取都是拨号上网的方式,两个没有太大区别,都可以用
苹果有没有连续点击屏幕的软件?
一般常用的类型也就是两个:PPPoE和DHCP。这个根据自己的情况选择。如果是家庭ADSL拨号上网,就选择PPPoE;如果是小区宽带或者酒店等有直接的网络接口可用的话,...
ppp拨号和pppoe区别?
一、作用不同1、PPP协议用来通过拨号或专线方式建立点对点连接发送数据,使其成为各种主机、网桥和路由器之间简单连接的一种共通的解决方案。2、pppoe协议...
pppoe拨号和自动获取ip哪个好?
根据这道问题反映的意思来看,它们其实都是拨号上网,只不过是谁拨号而已,这两种模式默认由运营商控制。在刚有互联网的时候,上网使用最为普遍的一种方式是拨...
路由器PPPOE拨号一直正在连接?
路由器安装以后PPPOE总是显示正在连接原因:连接路由器,只能在路由器上拨号,不要设置在电脑上拨号,设置方法如下。【家庭网络环境布线】:1、有猫(modem):...
什么是ppp0E拨号上网-吴可心keke的回答-懂得
与传统的接入方式相比,PPPoE具有较高的性能价格比,它在包括小区组网建设等一系列应用中被广泛采用,目前流行的宽带接入方式ADSL就使用了PPPoE协议...