PPPoE Server通过DHCP为用户分配IPv4地址

正文共:888 字 13 图,预估阅读时间:1 分钟

虽然我们之前介绍了MSR路由器如何配置PPPoE和DDNS**(** 拨号有公网Ip地址了,肯定要通过DDNS用起来啊!) ,但是我们没有单独配置过IPv4的PPPoE服务端和客户端,就直接用到了IPv6**(** 企业路由器配置IPv6家用宽带的PPPoE拨号示例),对部分同学来讲可能有点跳跃。为此,我们今天补一讲PPPoE Server通过远端DHCP服务器为用户分配IPv4地址的配置案例。

组网拓扑还是和之前一样,使用HCL和VSR搭建实验环境。我们将PPPoE Server设备桥接到主机的物理网卡,使HCL中的虚拟网络可以联网;然后配置PPPoE Client设备,其实就等效于我的MSR设备;再将Client设备连接到主机的VirtualBox Host-Only Ethernet Adapter网卡,模拟内网的上网主机。

在这个网络里面,Client通过PPPoE接入Server,Server作为PPPoE Server通过DHCP协议给Client分配代理前缀,Client再通过代理前缀给下面的主机分配IPv4地址。

首先,配置Server可以上网,直接在接口GE2/0下配置DHCP自动获取即可**(** 网络之路22:DHCP基础实验)。

跟配置IPv6的PPPoE一样,我们先在Server上创建一个PPPoE用户。

ruby 复制代码
#
local-user pppoe class network
 password simple pppoe
 service-type ppp

因为要使用DHCP为Client设备分配IPv4地址,所以我们先启用DHCP服务,并配置DHCP地址池。

css 复制代码
#
dhcp enable
#
dhcp server ip-pool pppoe
 network 10.172.192.0 24
 gateway-list 10.172.192.1
 dns-list 223.5.5.5

然后,我们配置虚拟模板接口1来和客户端交互报文,配置VT1接口采用PAP认证对端,配置本端IPv4地址,使用DHCP地址池pppoe为用户分配IPv4地址及DNS服务器地址。

properties 复制代码
#
interface virtual-template 1
 ppp authentication-mode pap domain system
 remote address pool pppoe
 ip address 10.172.192.1 24

接下来,在GigabitEthernet1/0接口上启用PPPoE Server协议,将该虚拟模板接口1绑定至该以太网接口。

cpp 复制代码
#
interface gigabitethernet 1/0
 pppoe-server bind virtual-template 1

在ISP域下为PPP用户配置使用本地认证。

perl 复制代码
#
domain system
 authentication ppp local

接下来,我们配置Client设备,对应各位手里的企业级路由器**(** 网络之路10:MSR810-W初始化配置)。

首先,PPPoE的基础部分与IPv6基本一致。创建一个Dialer接口,开启共享DDR;配置Client被Server认证的方式为PAP,当Server认证时,并配置Client发送的PAP用户名和密码;配置Dialer1接口通过协商获取IP地址和DNS服务器地址;配置PPPoE Client工作在永久在线模式;配置DDR自动拨号的间隔时间为20秒。

properties 复制代码
#
interface dialer 1
 dialer bundle enable
 ppp pap local-user pppoe password simple pppoe
 ip address ppp-negotiate
 ppp ipcp dns request
 dialer timer idle 0
 dialer timer autodial 20

接下来,配置一个PPPoE会话,该会话对应Dialer bundle 1,Dialer bundle 1对应Dialer1接口。

nginx 复制代码
#
interface gigabitethernet 1/0
 pppoe-client dial-bundle-number 1

跟IPv6不同,IPv4添加缺省路由是必需配置,客户端通过PPPoE无法获取默认路由,只能手工配置**(** 网络之路2:初识路由表)。

css 复制代码
#
ip route-static 0.0.0.0 0 Dialer 1

而如果要再为内网客户端分配IPv4地址,只需要再配置DHCP就可以了**(** 配合DHCP实验讲解一下DHCP考题)。

我们看一下Client设备PPPoE会话的概要信息。

查看服务端的PPPoE拨号信息和DHCP服务端信息。

测试一下Client设备是否获取到DNS服务器,并检查是否可以访问互联网。

成功获取到了我们通过DHCP配置的DNS服务器,并且可以正常解析域名,互联网访问成功。

长按二维码

关注我们吧


<>

配置PPPoEv6服务器为终端分配IPv6地址
<> <>

企业路由器配置IPv6家用宽带的PPPoE拨号示例
<> <>

H3C MSR NAT66配置指北
<> <>

CentOS 7停服之后该怎么安装软件呢?
<> <>

CentOS 7遗忘了root密码怎么办?
<> <>

与CentOS用户态完全兼容的TencentOS你用过没?
<> <>

如何在Ubuntu 23.10部署KVM并创建虚拟机?
<> <>

在Ubuntu系统手撸一个自动创建SSL证书的SHELL脚本
<> <>

在Ubuntu系统手撸一个自动搭建openVPN服务端的SHELL脚本
<> <>

Ubuntu配置openVPN服务端和客户端
<> <>

Ubuntu一键导入openVPN配置文件
<> <>

ufw命令简介
<> <>

将iStoreOS部署到VMware Workstation
<> <>

将iStoreOS部署到VMware ESXi变成路由器
<>

相关推荐
取名真是3 分钟前
Python 算法知识点从基础到进阶
开发语言·python·算法
FRing0324 分钟前
vue2干货总结3(computed计算属性、watch监听器)
开发语言·前端·vue.js·vue2
Fatbobman(东坡肘子)1 小时前
快速消失的硬盘容量 -- 肘子的 Swift 周报 #160
开发语言·人工智能·redis·ios·swiftui·iphone·swift
揽星河..2 小时前
【C语言】底层程序设计
c语言·开发语言
JavaPub-rodert2 小时前
从零搭建通用管理后台:ShiyuAdmin 的 Go、React 与 RBAC 实践
开发语言·react.js·golang
海的透彻3 小时前
dockerfile如何快速构建容器(java服务)
java·开发语言
code2cat3 小时前
Java工具篇之Gradle:用任务图组织构建与交付
java·开发语言·单元测试·gradle
北京中科新远科技3 小时前
高速交换机端口预算怎么做?下行、上联、拆分和冗余计算框架
开发语言·php
xiaoye-duck3 小时前
《C++ 项目:手写大模型接入 SDK》DeepSeek接口设计(下):流式响应实现和测试
开发语言·网络·c++·语言模型
AI源码4 小时前
基于 Python 的短视频用户行为分析系统
开发语言·python