在开始讲配置之间,简单讲讲PPPOE协议过程。
PPPOE整个过程分为:PPPOE发现阶段、PPPOE会话阶段、PPPOE结束阶段。
一、PPPOE发现阶段。主要是用来发现PPPOE服务器和为PPPOE会话阶段做好准备。PPPOE发现阶段主要分为四步(这四个步骤,细心地朋友可能会发现类似DHCP的四个过程)。
(1)首先,PPPOE客户端会发起一个PPPOE发现服务报文,以广播的形成向网络中所有节点发送,只有PPPOE服务器才会应答这个报文。这里的广播是采用二层的广播MAC地址(目标MAC全为F)进行广播的。
(2)所有PPPOE服务器都会收到这个广播的报文,PPPOE服务器提取报文中的信息与自己所能提供的服务进行比较,一旦满足要求PPPOE便会向PPPOE客户端发送PPPOE发现提供报文,告诉PPPOE客户端自己能满足要求。此时的数据是以目标MAC为PPPOE客户端,源为PPPOE服务器自己MAC的单播传输。
(3)PPPOE服务器发送的PPPOE发现提供报文被传送到PPPOE客户端(PPPOE客户端可能收到多个PPPOE服务器发送过来的这种报文,PPPOE只会选择第一个到达的报文进行应答),PPPOE客户端以一个PPPOE发现请求报文来向选定的PPPOE服务器发送请求服务。此过程也是单播传输(一旦与选定的PPPOE服务器确定了,以后的数据都是单播)。
(4)PPPOE服务器收到了来之PPPOE客户端的PPPOE发现请求报文,便会产生一个唯一的会话ID,标识即将与PPPOE客户端进入PPPOE会话阶段,通过PPPOE发现会话报文传输给PPPOE客户端,一旦PPPOE客户端确认无误,PPPOE会话阶段开始。
二、PPPOE会话阶段。PPPOE发现阶段结束后,进入的PPPOE会话阶段,在这个阶段主要靠的是PPP协议在进一步完成协商和业务数据。PPP的协商过程,小T我就简单的描述下。整个过程就是PPP协商过程,分三步:LCP、认证、NCP。
(1)LCP完成建立、配置和检测数据链路连接。
(2)LCP完成后,进入认证阶段,认证方式有chap和pap等,认证方式的决定是由LCP协商好的。值得注意的是chap是密文认证,pap是明文认证,在安全性商chap更为安全。
(3)认证完成后便进入了NCP阶段,NCP是一个协议族,适用于配置不同网络类型的,这也PPP被广泛采用的原因之一。PPOE调用的是IPCP协议,负责给PPPOE客户端提供IP和DNS服务地址等。
这个阶段完成后,业务数据就能正常传输了。数据的封装是自上而下的,那么PPPOE数据封装过程(以TCP/IP模型讨论)是这样的;应用层数据封装于传输层,再被网络层封装,再被PPP协议头部封装,再接着被PPPOE协议头部封装,最后就是MAC封装。
三、PPPOE结束阶段。在断开PPPOE连接的时候,PPPOE客户端会一个PPPOE发现终结报文告诉PPPOE服务器,来断开连接。
从PPPOE的协议过程来看,整个过程都没有出现ARP协议,所以你查看arp表是看不到任何MAC和IP绑定关系的。因此PPPOE可以保护客户不中ARP病毒攻击。
以上就是小T我总结的过程,讲的不好还请各位见谅。下面开始聊聊配置。首先给出我的IP规划。
Internet网:
Internet_Router:
Internet_Router_to_qiye_Router: 100.1.1.1 255.255.255.0
Internet_Router_to_wuxian_pppoe_server:210.1.1.1 255.255.0
Internet_Router_to_pppoe_dns_web_server:202.103.96.1 255.255.255.0
Internet_Router_to_ADSL_PPPOE_server:200.1.1.1 255.255.255.0
wuxian_pppoe_server:
wuxian_pppoe_server_to_Internet_Router:210.1.1.2 255.255.255.0
wuxian_pppoe_server_to_ap:220.1.1.1 255.2552.55.0
无线地址池范围:
wuxian_pppoe_server_pool:220.1.1.2-220.1.1.254
ADLS_PPPOE_server:
ADLS_PPPOE_server_to_Internet_Router:200.1.1.2 255.255.255.0
ADLS_PPPOE_server_to_home:150.1.1.1 255.255.255.0
ADSL的地址池范围:
ADSL_PPPOE_server:150.1.1.2-150.1.1.254
Internet上PPPOE服务的AAA服务器地址:
PPPOE_AAA_server:202.103.96.100 255.255.255.0
Internet上DNS服务器和测试web服务器的IP:
DNS_WEB_Server:202.103.96.112
测试web域名:www.xiaot.com
企业:
qiye_Router:
qiye_Router_to_Internet_Router:100.1.1.2 255.255.255.0
qiye_Router_to_neibu:192.168.1.1 255.255.255.0
qiye_PPPOE_server:192.168.1.2 255.255.255.0
企业内部PPPOE地址池范围:
qiye_PPPOE_server:10.1.1.2-10.1.1.254
home家庭无线路由对内IP网段为:192.168.0.2-192.168.0.254
PPPOE服务器的配置,小T我是这样构思的,在企业内部PPPOE服务器采用路由器本地认证,Internet网上的PPPOE服务采用的是从AAA服务器上的用户数据库认证。先来看看我企业内部PPPOE服务的配置:
vpdn enable (开启vpdn)
vpdn-group qiye_PPPOE_server (配置vpdn-group名字为qiye_PPPOE_server)
accept-dialin (接受拨入)
protocol pppoe (拨入的协议为PPPOE)
virtual-template 1 (与虚拟接口绑定)
exit
exit
user xiaot_1 password xiaot01 (本地用户数据库)
user xiaot_2 password xiaot02
ip local pool qiye_PPPOE 10.1.1.2 10.1.1.254 (本地地址池,给PPPOE客户端下发的地址池)
ip name-server 202.103.96.112 (DNS服务器)
ip dns server (开启路由器DNS功能,注意PT5.3不支持这条命令,故模拟一部分效果用域名访问看不到)
interface virtual-Template 1
ip unnumbered fastEthernet 0/0 (使用无编号,调用fa 0/0的IP作为自己的IP)
ppp authentication chap (使用chap认证)
peer default ip address pool qiye_PPPOE (下发的IP从本地地址池找)
exit
interface fastEthernet 0/0
pppoe enable (开启PPPOE)
exit
以上就是企业PPPOE服务器的配置了,注意在企业出口路由要有能到企业分配的PPPOE的地址池的网段的路由。(本实验的配置参考见附件)。由于PT5.3不支持DNS的下发,小T我再简单介绍两个配置方法下发DNS。
方法一:调用DHCP的地址池来发放
ip dhcp pool pppoe (DHCP地址池名)
network 10.1.1.0 255.255.255.0
default-router 10.1.1.1
dns-server 202.103.96.112 8.8.8.8 (主辅两个DNS)
interface virtual-Template 1
peer default ip address dhcp-pool pppoe
exit
方法二:利用PPP的IPCP来下发:
interface virtual-Template 1
ppp ipcp dns 202.103.96.112 8.8.8.8 (主辅两个DNS)
在Internet网上的两个PPPOE配置跟qiye的差不多,我的构思是调用了AAA服务器来认证的。PPPOE的服务配置我不重复了,主要看AAA的配置。
以wuxian_pppoe_server为例:
radius-server host 202.103.96.100 key xiaot1234 (配置与AAA服务器通信实验的key)
aaa new-model (开启AAA服务)
aaa authentication ppp default group radius (PPP认证使用AAA)
aaa authentication login default group radius (设备登入认证使用AAA)
aaa authorization network default group radius (授权使用AAA)
配置好后,我们认证的用户数据库,将向AAA服务器查找。下面是AAA服务器的配置图: