原来PPPOE是这么玩的

原来PPPOE是这么玩的PPPOE 基于以太网的点对点协议 那么既然是基于以太网的 也就是说是二层之间的通信 那么彼此就需要知道对端的 mac 地址 如果知道对端的 mac 地址呢 肯定是通过广播 因为以太网中 广播可以到达任何一个节点 那么对端接收到这个广播帧以后

欢迎大家来到IT世界,在知识的湖畔探索吧!

PPPOE—-基于以太网的点对点协议,那么既然是基于以太网的,也就是说是二层之间的通信,那么彼此就需要知道对端的mac地址,如果知道对端的mac地址呢,肯定是通过广播,因为以太网中,广播可以到达任何一个节点,那么对端接收到这个广播帧以后为何要做处理呢,他们之间肯定存在一种特殊的关系,这种关系可以理解为客户端(client)和服务器(server)的关系,那接下来通过一个pppoe客户端和用户端的配置用以理解pppoe拨号上网原理:

原来PPPOE是这么玩的

网络拓扑



欢迎大家来到IT世界,在知识的湖畔探索吧!

其中LIANTONG用手机USB数据线桥接模拟的外网,ip地址网关为192.168.42.129/24,路由器R1的e0/0接口ip地址为192.168.42.200/24,接下来在R1设备作为server端配置PPPOE:

server端配置:

R1(config)#username thinkmo password thinkmo—-本地创建一个用户名和密码,用作pppoe认证

R1(config)#aaa new-model——-配置认证模式为aaa

R1(config)#aaa authentication ppp default local—-本地认证方式验证pppoe

R1(config)#bba-group pppoe global—建立使用的bba组

R1(config-bba-group)#virtual-template 1—-绑定到虚拟模板接口

R1(config-bba-group)#exit–退出

R1(config)#interface virtual-template 1—进入到虚拟模板接口

R1(config-if)#peer default ip address dhcp-pool pppoe—使用本地dhcp地址池为pppoe客户端分配ip地址

R1(config-if)#encapsulation ppp—封装为ppp

R1(config-if)#ppp authentication chap–设置认证类型为chap

R1(config-if)#mtu 1492–最大网络传输单元值为1492

原来PPPOE是这么玩的

PPPOE

R1(config-if)#ppp ipcp dns 114.114.114.114—ppp客户端分配 DNS地址为114.114.114.114

R1(config-if)#ip unnumbered e0/1—借用接口e0/1的地址使用(节约ip地址,由于这里借用的接口没有ip地址,所以为0.0.0.0 )

R1(config-if)#exit—-退出

R1(config)#int e0/1——进入接口下

R1(config-if)#pppoe enable—允许pppoe拨入

R1(config-if)#no sh–打开接口

server端配置dhcp地址池:

R1(config)#ip dhcp pool pppoe

netwoR1(dhcp-config)network 10.1.1.0 255.255.255.0

Client端配置:

GW(config)#interface dialer 1—进入虚拟拨号口

GW(config-if)#ip add negotiated—ip地址自动从服务器协商

GW(config-if)#encapsulation ppp—封装ppp

GW(config-if)#ppp chap hostname thinkmo—配置认证类型chap,用户名为thinkmo

GW(config-if)#ppp chap password thinkmo—配置认证类型chap,密码为thinkmo

GW(config-if)#dialer pool 1—配置拨号地址池

GW(config-if)#exit–退出

GW(config)#int e0/1–进入接口下

GW(config-if)#pppoe enable–允许pppoe拨出

GW(config-if)#pppoe-client dial-pool-number 1–在物理接口下将拨号池于该物理接口绑定(相当于使用物理接口拨号)

GW(config-if)#no sh–打开物理接口

GW(config-if)#exit–退出

验证客户端,查看是否获取到ip地址

原来PPPOE是这么玩的

获取到ip地址10.1.1.1

说明拨号成功,并且成功获取到server端分配的ip地址

GW上做内网DHCP 地址池172.16.1.0/24网段,为PC分配ip地址:

GW(config)#do sh run | se dhcp

ip dhcp pool PC

network 172.16.1.0 255.255.255.0

default-router 172.16.1.1

dns-server 114.114.114.114

打开pc,查看是否能自动获取ip地址:

PC4> ip dhcp

DDORA IP 172.16.1.2/24 GW 172.16.1.1

PC5> ip dhcp

DDORA IP 172.16.1.3/24 GW 172.16.1.1

能够正常获取ip地址,没问题,然后在客户端上做nat将内网172.16.1.0/24网段的数据转换出去,首先客户端写一条默认出去:

GW(config)#ip route 0.0.0.0 0.0.0.0 dialer 1–默认路由通过拨号口出去

GW(config)#int dialer 1

GW(config-if)#ip nat outside

GW(config-if)#exit


——————————————–定义拨号接口为外网口然后退出

GW(config)#int e0/0

GW(config-if)#ip nat inside

GW(config-if)#exit


—————————定义内网口

GW(config)#access-list 1 permit 172.16.1.0 0.0.0.255———-抓取感兴趣数据流

GW(config)#ip nat inside source list 1 interface dialer 1 overload——通过拨号口nat转换

最后一步服务端写默认路由,做nat:

R1(config)#ip route 0.0.0.0 0.0.0.0 192.168.42.129–默认路由下一跳地址192.168.42.129

R1(config)#int e0/0进入外网口

R1(config-if)#ip nat outside–定义外网口

R1(config)#int virtual-template 1——–进入虚拟模板口

R1(config-if)#ip nat inside–定义为内网口

R1(config)#access-list 10 permit any–抓取感兴趣数据流所有

R1(config)#ip nat inside source list 10 interface e0/0 overload–做nat转换

最后测试:

原来PPPOE是这么玩的

PC4

原来PPPOE是这么玩的

PC5

可以看到,PC4和PC5都可以ping通外网的DNS服务器114.114.114.114,和8.8.8.8,pppoe测试成功,通过以上pppoe的配置,其实也可以发现,在本模拟环境可以看到经过了两次nat的转换,实际上在家用或者企业办公网络,我们使用的网络可能经过了多次nat的转换!

这就是pppoe–现网环境中的宽带拨号上网!

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/129224.html

(0)
上一篇 26分钟前
下一篇 11分钟前

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们YX

mu99908888

在线咨询: 微信交谈

邮件:itzsgw@126.com

工作时间:时刻准备着!

关注微信