PPPOE 模拟环境搭建

2023-12-13 14:08
文章标签 模拟 搭建 环境 pppoe

本文主要是介绍PPPOE 模拟环境搭建,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

这段时间,包括我自己测试OTT盒子 PPPOE的时候比较痛苦,要不就是在别人的位置上测试,要不就是借用PPPOE的设备,觉得还是自己搭建一个PPPOE真实拨号上网的环境多好!但是坑爹的win7找不到好用的pppoe服务软件,公共机器xp已经搭建好的PPPOE环境没有双网卡也验证不了拨号后网络共享是否OK。最后还是以自己的笔记本(win7)双网卡(无线、有线)的机器上搭建一个环境来做下实验(聪明的你也可以使用任何双网卡的机器搭建哦)。

介绍话不多说,给各位直接介绍。

搭建主要工具:virtualbox 、unbuntu12.04ios

搭建主要软件:rp-ppoe 、iptables

 

参考文档:

http://blog.chinaunix.net/uid-9525959-id-4008338.html

http://fp-moon.iteye.com/blog/1756466

http://askubuntu.com/questions/161551/how-to-start-stop-iptables-in-ubuntu-12-04

https://help.ubuntu.com/community/IptablesHowTo

 

1.1    虚拟机搭建

 



安装好Virtualbox虚拟机后,按照提示选择安装ubuntu12.04 64bits版本,由于我们的机器只是要最低程度的验证PPPOE问题,硬盘请尽量选择足够小,我的是8G.

 

虚拟机最为重要的一步:配置网卡及网络模式!

 

1.2    软件配置

Rp-pppoe链接: https://github.com/sammaple/rp-pppoe-3.11下载使用(rp-pppoe-3.6版本太低,会有问题,建议直接使用最新版本)

步骤:

1、sudo apt-get installppp

2、解压rp-pppoe

3、sudo chown -Rroot:root /xx/rp-pppoe-3.11-master/

4、sudo apt-get installlibc6-dev

5、sudo /xx/rp-pppoe-3.11-master/go(configure,make, make install一条龙脚本)

 

ps:最好将go脚本的最后一句注释掉,这个是客户端的配置

注释掉改句 #sh../scripts/pppoe-setup

 

6、安装完成后可以whereispppoe-server查看安装是否成功。/usr/sbin/pppoe-server

7、配置pap-secrets、pppoe-server-options文件

 

直接贴出pap-secrets内容:

jhy* jhy *(第一个jhy 是拨号使用的用户名 ,第二jhy是拨号密码)

 

直接贴出pppoe-server-options内容:

#PPP options for the PPPoE server

#LIC: GPL

require-pap

#login

lcp-echo-interval10

lcp-echo-failure2

ms-dns xx.xx.xx.xx 

#这个dns以你实际网络为准


8、启动pppoeserver服务

 

sudopppoe-server -I eth1 -L 192.168.5.1 -R 192.168.5.5 -N 10

 

意思就是,获得pppoe地址信息如下

-I eth1 指定pppoe服务器在那个网卡接口监听连接请求(我们在虚拟机中设置的eth1为有线网卡);
-L 192.168.5.1 指定pppoe服务器的ip地址。(注意:此IP地址不是网卡的IP地址,而是PPPOE服务器的虚拟IP)(此地址可以任意);
-R 192.168.5.5 pppoe服务器分配给客户端的IP地址,从192.168.5.5开始,递增;
-N 10 指定最多可以连接pppoe服务器的客户端数量(默认是64 最大是65534);

 

 

9、客户端PPPOE拨号

盒子终端与笔记本有线网口网线接好,填入与第7步对应的用户名密码拨号成功。

 

1.3    拨号共享上网

在虚拟机中使用iptabes进行端口转发规则定义

 

丢弃在eth1上的pppoe数据

iptables-A INPUT -i eth1 -s 192.168.5.0/24 -j DROP

 

转发pppoe上的数据到可以联网的eth0无线网卡上:
iptables -t nat -A POSTROUTING -s192.168.5.0/24 -o eth0 -j MASQUERADE

 

iptables-save  保存路由规则

 

modprobeip_tables  重启iptables服务(这里需要注意的是ubuntu没有将iptables注册为服务,所以serviceiptables restart stop 等命令使用不了)

 

打开ip转发功能echo"1">/proc/sys/net/ipv4/ip_forward

 

1.4    小结

甩掉包袱一身轻松


这篇关于PPPOE 模拟环境搭建的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/488744

相关文章

python项目环境切换的几种实现方式

《python项目环境切换的几种实现方式》本文主要介绍了python项目环境切换的几种实现方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 如何在不同python项目中,安装不同的依赖2. 如何切换到不同项目的工作空间3.创建项目

C++多线程开发环境配置方法

《C++多线程开发环境配置方法》文章详细介绍了如何在Windows上安装MinGW-w64和VSCode,并配置环境变量和编译任务,使用VSCode创建一个C++多线程测试项目,并通过配置tasks.... 目录下载安装 MinGW-w64下载安装VS code创建测试项目配置编译任务创建 tasks.js

MongoDB搭建过程及单机版部署方法

《MongoDB搭建过程及单机版部署方法》MongoDB是一个灵活、高性能的NoSQL数据库,特别适合快速开发和大规模分布式系统,本文给大家介绍MongoDB搭建过程及单机版部署方法,感兴趣的朋友跟随... 目录前言1️⃣ 核心特点1、文档存储2、无模式(Schema-less)3、高性能4、水平扩展(Sh

一篇文章彻底搞懂macOS如何决定java环境

《一篇文章彻底搞懂macOS如何决定java环境》MacOS作为一个功能强大的操作系统,为开发者提供了丰富的开发工具和框架,下面:本文主要介绍macOS如何决定java环境的相关资料,文中通过代码... 目录方法一:使用 which命令方法二:使用 Java_home工具(Apple 官方推荐)那问题来了,

vite搭建vue3项目的搭建步骤

《vite搭建vue3项目的搭建步骤》本文主要介绍了vite搭建vue3项目的搭建步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1.确保Nodejs环境2.使用vite-cli工具3.进入项目安装依赖1.确保Nodejs环境

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多

idea+spring boot创建项目的搭建全过程

《idea+springboot创建项目的搭建全过程》SpringBoot是Spring社区发布的一个开源项目,旨在帮助开发者快速并且更简单的构建项目,:本文主要介绍idea+springb... 目录一.idea四种搭建方式1.Javaidea命名规范2JavaWebTomcat的安装一.明确tomcat

k8s搭建nfs共享存储实践

《k8s搭建nfs共享存储实践》本文介绍NFS服务端搭建与客户端配置,涵盖安装工具、目录设置及服务启动,随后讲解K8S中NFS动态存储部署,包括创建命名空间、ServiceAccount、RBAC权限... 目录1. NFS搭建1.1 部署NFS服务端1.1.1 下载nfs-utils和rpcbind1.1

Java 单元测试之Mockito 模拟静态方法与私有方法最佳实践

《Java单元测试之Mockito模拟静态方法与私有方法最佳实践》本文将深入探讨如何使用Mockito来模拟静态方法和私有方法,结合大量实战代码示例,带你突破传统单元测试的边界,写出更彻底、更独立... 目录Mockito 简介:为什么选择它?环境准备模拟静态方法:打破“不可变”的枷锁传统困境解法一:使用M

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践