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

相关文章

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

【C++】_list常用方法解析及模拟实现

相信自己的力量,只要对自己始终保持信心,尽自己最大努力去完成任何事,就算事情最终结果是失败了,努力了也不留遗憾。💓💓💓 目录   ✨说在前面 🍋知识点一:什么是list? •🌰1.list的定义 •🌰2.list的基本特性 •🌰3.常用接口介绍 🍋知识点二:list常用接口 •🌰1.默认成员函数 🔥构造函数(⭐) 🔥析构函数 •🌰2.list对象

usaco 1.2 Transformations(模拟)

我的做法就是一个一个情况枚举出来 注意计算公式: ( 变换后的矩阵记为C) 顺时针旋转90°:C[i] [j]=A[n-j-1] [i] (旋转180°和270° 可以多转几个九十度来推) 对称:C[i] [n-j-1]=A[i] [j] 代码有点长 。。。 /*ID: who jayLANG: C++TASK: transform*/#include<

搭建Kafka+zookeeper集群调度

前言 硬件环境 172.18.0.5        kafkazk1        Kafka+zookeeper                Kafka Broker集群 172.18.0.6        kafkazk2        Kafka+zookeeper                Kafka Broker集群 172.18.0.7        kafkazk3

安装nodejs环境

本文介绍了如何通过nvm(NodeVersionManager)安装和管理Node.js及npm的不同版本,包括下载安装脚本、检查版本并安装特定版本的方法。 1、安装nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash 2、查看nvm版本 nvm --version 3、安装

【IPV6从入门到起飞】5-1 IPV6+Home Assistant(搭建基本环境)

【IPV6从入门到起飞】5-1 IPV6+Home Assistant #搭建基本环境 1 背景2 docker下载 hass3 创建容器4 浏览器访问 hass5 手机APP远程访问hass6 更多玩法 1 背景 既然电脑可以IPV6入站,手机流量可以访问IPV6网络的服务,为什么不在电脑搭建Home Assistant(hass),来控制你的设备呢?@智能家居 @万物互联

高并发环境中保持幂等性

在高并发环境中保持幂等性是一项重要的挑战。幂等性指的是无论操作执行多少次,其效果都是相同的。确保操作的幂等性可以避免重复执行带来的副作用。以下是一些保持幂等性的常用方法: 唯一标识符: 请求唯一标识:在每次请求中引入唯一标识符(如 UUID 或者生成的唯一 ID),在处理请求时,系统可以检查这个标识符是否已经处理过,如果是,则忽略重复请求。幂等键(Idempotency Key):客户端在每次

pico2 开发环境搭建-基于ubuntu

pico2 开发环境搭建-基于ubuntu 安装编译工具链下载sdk 和example编译example 安装编译工具链 sudo apt install cmake gcc-arm-none-eabi libnewlib-arm-none-eabi libstdc++-arm-none-eabi-newlib 注意cmake的版本,需要在3.17 以上 下载sdk 和ex

pip-tools:打造可重复、可控的 Python 开发环境,解决依赖关系,让代码更稳定

在 Python 开发中,管理依赖关系是一项繁琐且容易出错的任务。手动更新依赖版本、处理冲突、确保一致性等等,都可能让开发者感到头疼。而 pip-tools 为开发者提供了一套稳定可靠的解决方案。 什么是 pip-tools? pip-tools 是一组命令行工具,旨在简化 Python 依赖关系的管理,确保项目环境的稳定性和可重复性。它主要包含两个核心工具:pip-compile 和 pip

hdu4431麻将模拟

给13张牌。问增加哪些牌可以胡牌。 胡牌有以下几种情况: 1、一个对子 + 4组 3个相同的牌或者顺子。 2、7个不同的对子。 3、13幺 贪心的思想: 对于某张牌>=3个,先减去3个相同,再组合顺子。 import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.IOExcepti