l inux搭建ipv6的pppoe server端
近期在做PPPOEV6的测试 就尝试着在l inux搭建pppoe相关软件 主要是开源软件ppp-2.4.5和rp-pppoe-3.8
以下是对网上资料的整理跳过很多人写的乱七八糟的 COPY完全按下面步骤走就可以了网络架构pc ------------router---------server
PC:WIN7
ROUTER:dl ink 860lb
Server:DEBIAN 5(这个安好就自带了 ppp rp-pppoe但下面我还是讲下如何用 GZ来安你可以用apt-get autoremove ppp pppoe 将它删了)
如何查看是否安好了用 d pkgdebian:/etc/ppp#dpkg-l | grep ppprc ppp 2.4.5-4 Point-to-Point Protocol (PPP) -daemonrc pppoe 3.8-3 PPPoverEthernetdriverdebian:/etc/ppp#dpkg--get-selections | grep pppppp deinstal lpppoe deinstal l
如上系统自带的被我删了然后我自己装了这 2个软件
1 .下载ppp-2.4.5.tar.gz、 rp-pppoe-3.8.tar.gz
2.安装a.将ppp、 rp-pppoe解压b.安装pppdcd ppp-2.4.5/pppdvi Makefi le. l inux开启HAVE_I NET6=y//关键点不然不支持IPV6 cdppp-2.4.5
./config ure
备注先 make clean一下确保 HAVE_INET6开启makemake instal lc.安装rp-pppoecd rp-pppoe/src
./configure--enable-plugin=/opt/ppp-2.4.5 //这句好像没什么意义makemake instal l
3.修改配置文件vim/etc/ppp/pppoe.conf
修改下面几个值其他的不要动
ETH=eth0
USER=rp-pppoe //拨号用户名
LINUX_PLUGIN=/etc/ppp/plugins/rp-pppoe.sovim/etc/ppp/pppoe-server-options
下面是全部内容
#PPP options for the PPPoE server
#LIC:GPLrequire-chap //表示会用到 chap-secrets文件
#loginlcp-echo-interval 10lcp-echo-fai lure 2
+ipv6ipv6: :1, : :2
SERVER会分到一个FE80: :1/10的地址 ROUTER会分到一个FE80: :2/10的地址然后我们需要配置dibbler才能让ROUTER拿到GLOBAL地址vim/etc/ppp/chap-secrets
#Secrets for authentication using CHAP
#cl ient server secret IP addressesrp-pppoe * rp-pppoe *
用*代替地址这个表是C HA P认证的账号和密码对照表所以实际上我们拨号的账号密码都是rp-pppoevim optionslocal
4.开启s e rve r端pppoe-server -I eth0
5.页面和配置效果
PPPOEV6 ONLY
拨号成功以后可以看到 PPP0分配了一个本地地址 FE80: :2/10ppp0 Link encap:Point-to-Point Protocolinet6 addr: fe80: :2/10 Scope:Link
UP POINTOPOINT RUNNING NOARP MULTICASTMTU:1492 Metric:1
RX packets:7 errors:0 dropped:0 overruns:0 frame:0
TX packets:17 errors:0 dropped:0 overruns:0 carrier:0col l isions:0 txqueuelen:3
RX bytes:196(196.0 B) TX bytes:1291 (1 .2 KiB)
但是我们还没有拿到 GLOBAL地址所以我们需要在 debian上跑 radvd和dibbler来给PPP接口分配地址
1 . STATELESS的情况这种模式下只跑 RADVD就可以了 RADVD的配置文件如下
Vim/etc/radvd.confinterface ppp0
{
AdvSendAdvert on;
M inRtrAdvI nterval 3;
M axRtrAd vI nterva l 10;
AdvDefaultPreference high;
AdvHomeAgentFlag off;
IgnoreIfMissing on; //这个很关键
AdvManagedFlag off; //这个很关键
AdvOtherConfig Flag off; //这个很关键prefix 2001 : :/96
{
AdvOnLink on;
AdvAutonomous on; //让PPP接口根据 PREFIX生成地址
AdvRouterAddr on;
};
RDNSS 2001 : :1 2001 : :2
{
AdvRDNSSPreference 8;
AdvRDNSSLifetime 30;
};
};
然后看效果 G LO BAL地址成功分配ppp0 Link encap:Point-to-Point Protocolinet6 addr:2001 : :2/64 Scope:Globalinet6 addr: fe80: :2/10 Scope:Link
UP POINTOPOINT RUNNING NOARP MULTICASTMTU:1492 Metric:1RX packets:47 errors:0 dropped:0 overruns:0 frame:0
TX packets:13 errors:0 dropped:0 overruns:0 carrier:0col l isions:0 txqueuelen:3
RX bytes:5452(5.3 KiB) TX bytes:1439(1 .4 KiB)cat /etc/resolv.conf
#Auto-Generatednameserver 192.168.0.1search
但是RDNSS没有解析成功没拿到 DNS地址看来只有换 STATEFUL模式
2. STATE F UL模式既要配置RADVD又要配置DI BBL ER
Vim/etc/radvd.conf注意红色部分的不同i nterface ppp0
{
AdvSendAdvert on;
MinRtrAdvI nterval 3;
MaxRtrAdvI nterval 10;
AdvDefaultPreference high;
AdvHomeAgentFlag off;
IgnoreIfMissing on;
AdvManagedFlag on;
AdvOtherConfig Flag on;prefix 2001 : :/96
{
AdvOnLink on;
AdvAutonomous off;
AdvRouterAddr on;
};
RDNSS 2001 : :1 2001 : :2
{
AdvRDNSSPreference 8;
AdvRDNSSLifetime 30;
};
};
红色部分意思是 RADVD不分配地址用 DIBBLER来分原理就是协议上规定的 M和O值Vim/etc/dibbler/server.conf
#Logging level range: 1(Emergency)-8(Debug)log-level 8
#Don't log ful l datelog-mode short
#set preference of this server to 0(higher=more prefered)preference 0iface"ppp0" {
//also ranges can be defines, instead of exact valuest1 1800-2000t22700-3000prefered-l ifetime 3600val id-l ifetime 7200class{pool 2000: :/64
}
#assign temporary addresses from thispool ta-class{pool 3000: :/96
}
#assign/96 prefixes from this poolpd-class{pd-pool 3000:458:ff01 :ff03:abcd: :/80pd-length 96
}option dns-server 2000: :ff,2000: :fe
}
有时候会发生不回报文的问题红色部分 ppp0表示在这个接口上跑 dibbler
然后我将ppp0改成eth0,居然成功了但第二次失败又改回 ppp0,成功后来我发现原来是因为PPP0接口建立之前带DIBBLER会不能通信必须在PPP0建立后把DIBBLER带起来这个BUG看来需要自己研究配置文件才行了暂时放着
成功以后分得 GLOBAL地址ppp0 Link encap:Point-to-Point Protocolinet6 addr:2000: :ea5c:2de2:713e:a561/96 Scope:Globalinet6 addr: fe80: :2/10 Scope:Link
UP POINTOPOINT RUNNING NOARP MULTICASTMTU:1492 Metric:1
RX packets:56 errors:0 dropped:0 overruns:0 frame:0
TX packets:16 errors:0 dropped:0 overruns:0 carrier:0col l isions:0 txqueuelen:3
RX bytes:6847(6.6 KiB) TX bytes:1806(1 .7 KiB)
DNS也分到了
#cat /etc/resolv.conf
#Auto-Generatednameserver 2000: :ffnameserver 2000: :fenameserver 192.168.0.1search
分割线
这个ROUTER还支持pppoev4 share pppoev6
SERVER的参数有点不一样其它都一样 ,主要是给一个 I PV4的地址pppoe-server -I eth0 –L 10.10.10.10 -R 10.10.10.1 1
拨号成功以后 P P P 0接口会既有I PV4地址又有I PV6地址非常有意思
ppp0 Link encap:Point-to-Point Protocolinet addr:10.10.10.13 P-t-P:10.10.10.10 Mask:255.255.255.255inet6 addr:2001 : :2/64 Scope:Globalinet6 addr: fe80: :2/10 Scope:Link
UP POINTOPOINT RUNNING NOARP MULTICASTMTU:1492 Metric:1RX packets:27 errors:0 dropped:0 overruns:0 frame:0
TX packets:28 errors:0 dropped:0 overruns:0 carrier:0col l isions:0 txqueuelen:3
RX bytes:2544(2.4 KiB) TX bytes:2014(1 .9 KiB)
但是SERVER这边没有GLOBAL地址我们可以自己配一个
Debian:/#ip-6 addr add 2001 : :1/64 devppp0
加路由
Debian:/#ip-6 route add 3001 : :1/64 via2001 : :1 ;
BuyVM商家属于比较老牌的服务商,早年有提供低价年付便宜VPS主机还记得曾经半夜的时候抢购的。但是由于这个商家风控非常严格,即便是有些是正常的操作也会导致被封账户,所以后来陆续无人去理睬,估计被我们风控的抢购低价VPS主机已经手足无措。这两年商家重新调整,而且风控也比较规范,比如才入手他们新上线的流媒体优化VPS主机也没有不适的提示。目前,BuyVM商家有提供新泽西、迈阿密等四个机房的VPS主机...
GreencloudVPS此次在四个机房都上线10Gbps大带宽VPS,并且全部采用AMD处理器,其中美国芝加哥机房采用Ryzen 3950x处理器,新加坡、荷兰阿姆斯特丹、美国杰克逊维尔机房采用Ryzen 3960x处理器,全部都是RAID-1 NVMe硬盘、DDR4 2666Mhz内存,GreenCloudVPS本次促销的便宜VPS最低仅需20美元/年,支持支付宝、银联和paypal。Gree...
legionbox怎么样?legionbox是一家来自于澳大利亚的主机销售商,成立时间在2014年,属于比较老牌商家。主要提供VPS和独立服务器产品,数据中心包括美国洛杉矶、瑞士、德国和俄罗斯。其中VPS采用KVM和Xen架构虚拟技术,硬盘分机械硬盘和固态硬盘,系统支持Windows。当前商家有几款大硬盘的独立服务器,可选美国、德国和瑞士机房,有兴趣的可以看一下,付款方式有PAYPAL、BTC等。...