标签:windows pppoe配置 pppoe服务器 路由器pppoe
大分部ISP(Internet服务提供商)在网络上使用PPPoE(Point to Point Over Ethernet,以太网上的点对点协议)来验证用户的计算机。大家在家里上网的时候会进行ADSL拨号连接,中小型公司的路由器进行ADSL连接,使用的都是PPPoE协议。今天为大家讲解一下PPPoE的基本原理、演示如何在思科路由器上配置服务器和客户端,以及在Windows操作系统上配置客户端。
PPPoE概述:
PPPoE是一个二层协议,用于把PPP的数据帧封装在以太网帧中。借助PPP的优势,可以很好地实现认证、会话检测、计费等,主要用于运营商及小区宽带。
PPPoE基本原理:
PPPoE分为控制层面和数据层面,控制层面就是如何建立PPPoE会话,如何进行用户的认证,而数据层面就是我们数据包的转发。PPPoE在控制层面分为两个阶段,第一阶段是Discovery(发现)阶段,第二阶段是会话建立阶段。
第一阶段:
发现阶段的主要目的就是寻找PPPoE服务器,此时的以太网类型是0x8863.此阶段分为4个步骤:
1.客户端(PC或路由器)广播一个PPPoE Active Discovery Initiantion(PADI)报文,源MAC地址是它自己的MAC地址,目标MAC地址是全F的广播MAC地址。
2.PPPoE服务器发送一个PPPoE Active Discovery Offer报文(PADO),描述它能提供哪些服务。目标MAC是客户端的MAC地址。
3.PPPoE客户端发送一个单播PPPoE Active Discovery Request报文(PADR)给PPPoE服务器。
4.PPPoE服务器发送一个单播PPPoE Acitve Discovery Session-confirm报文(PADS)给客户端。这是一个确认报文,会话建立完成。
当发现阶段完成后,PPPoE客户端和被选择的PPPoE服务器具有用来在以太网上建立PPP连接的信息。这时候开始PPP建立过程,包括LCP和NCP过程。
第二阶段:
第二阶段是PPPoE的会话阶段,以太网类型是0x8864,这一阶段会完成PPP的建立,在建立完成中最重要的是完成认证,基本上有两种认证协议,包括PAP和CHAP。
PPPoE的报文封装:
PPPoE报文(发现阶段)
PPPoE报文(会话阶段)
接下来在进行实验,
路由器上配置PPPoE的服务器,把思科IOS的路由器做为PPPoE的服务器;
使用Win7和XP内建的客户端进行拨号连接;
使用思科路由器做为PPPoE的客户端进行拨号。
实验环境:
Cisco Router
IOS Version:Version 12.4(15)T5
Device Type: Cisco 3660
Client:
Windows XP
Windows7
Cisco Router
以下实验均可以通过模拟器实现,博主均使用模拟器。在Vmware workstation上安装Windows XP和windows7操作系统,通过网卡桥接的方式与R2和R1相连。通过dynamips模拟器加载真实的36路由器的IOS来模拟思科路由器。大家只有多做实验才能更加深刻的理解和吃透技术。纸上得来终觉浅,觉知此事要躬行。
网络拓扑如下:
路由器基本配置如下:
R1(config)#int lo 0
R1(config-if)#ip add 1.1.1.1 255.255.255.0
R1(config-if)#int f0/0
R1(config-if)#ip add 12.1.1.1 255.255.255.0
R1(config-if)#no shut
R1(config-if)#router rip
R1(config-router)#ver 2
R1(config-router)#no auto
R1(config-router)#net 1.0.0.0
R2(config)#int f0/0
R2(config-if)#ip add 12.1.1.2 255.255.255.0
R2(config-if)#no shut
R2(config-if)#int lo 0
R2(config-if)#ip add 23.1.1.2 255.255.255.0
R2(config-if)#router rip
R2(config-router)#ver 2
R2(config-router)#no auto
R2(config-router)#net 12.0.0.0
R2(config-router)#net 23.0.0.0
PPPoE Server配置:
R2(config)#int f1/0
R2(config-if)#no ip add
R2(config-if)#no shut
R2(config-if)#pppoe enable
R2(config)#ip local pool ippool 23.1.1.100 23.1.1.200
R2(config)#bba-group pppoe global
R2(config-bba-group)#virtual-template 1
R2(config-bba-group)#exit
R2(config)#int virtual-template 1
R2(config-if)#ip unnumbered loopback 0
R2(config-if)#peer default ip address pool ippool
R2(config-if)#ppp authentication pap
R2(config-if)#exit
R2(config)#username user1 password cisco
R2(config)#username user2 password cisco
Win7客户端配置:
WinXP客户端配置:
路由器做为客户端配置:
不仅电脑可以拨号,如果家里或公司有多台电脑,就需要一台支持PPPoE客户端功能的路由器。一般的家用级别路由器设置比较简单,如tp-link等。思科属于企业级的路由器,通过命令行的方式配置相对复杂一点,以下介绍把思科路由器配置为PPPoE的客户端,并配置NAT,使内网用户可以上网。
PPPoE配置:
interface FastEthernet1/0
no ip address
pppoe enable
pppoe-client dial-pool-number 1
nterface Dialer1
ip address negotiated
ip mtu 1492
encapsulation ppp
dialer pool 1
ppp authentication pap callin
ppp pap sent-username user1 password 0 cisco
路由配置:
ip route 0.0.0.0 0.0.0.0 Dialer1
NAT配置:
interface Loopback0
ip address 3.3.3.3 255.255.255.0
ip nat inside
interface Dialer1
ip nat outside
access-list 100 permit ip 3.3.3.0 0.0.0.255 any
ip nat inside source list 100 interface Dialer1 overload
测试:
今天宽带大部分都是包月包年了,如果是按小时计费的话,可能按需拨号就更为划算,就是当有流量的时候才会拨号,没有的时候就不会拨号,能省下不少银子。以下是在路由器上按需拨号的配置:
R3(config)#interface f1/0
R3(config-if)#no pppoe-client dial-pool-number 1
R3(config-if)#pppoe-client dial-pool-number 1 dial-on-demand
R3(config)#access-list 101 permit tcp any any eq 23
R3(config)#dialer-list 1 protocol ip list 101
R3(config)#interface dialer 1
R3(config-if)#dialer-group 1
读者可以进行测试,在没有telnet流量以前,是没有拨号的,在R3上telnet一个地址,触发流量后自动进行拨号。
附件:压缩包中为PPPoE报文,感兴趣的读者可以使用软件查看。
本文出自 “杨森的IT之路” 博客,请务必保留此出处http://senyang.blog.51cto.com/3427514/1680155
标签:windows pppoe配置 pppoe服务器 路由器pppoe
原文地址:http://senyang.blog.51cto.com/3427514/1680155