2015年3月5日 星期四

設置IPv6 pppoe server on ubuntu

2015第1PO!(會不會是今年最後一PO@@)
 
不知道寫在那就留在這了

參考:
https://sskaje.me/2014/05/set-pppoe-server-ubuntu/#.VPghns2li1H
http://sunghau.blogspot.tw/2011/11/ipv6-pppoe-server-pppoe-client-on-arm.html

注意ipv6-up.d/radvd寫法如下:
#!/bin/sh

ADDR=$(echo $PPP_REMOTE | cut -d : -f 3,4,5,6)

if test x$ADDR = x ; then
    echo "Unable to generate IPv6 address"
    exit 0
fi

ADDR=2001:3629::$ADDR

#add route
route -6 add $ADDR/128 dev $PPP_IFACE

#generate radvd config
RAP=/etc/ppp/ipv6-radvd/$PPP_IFACE
RA=$RAP.conf

cat << EOF > $RA
interface $PPP_IFACE{
        AdvManagedFlag off;
        AdvOtherConfigFlag on;
        AdvSendAdvert on;
        MinRtrAdvInterval 5;
        MaxRtrAdvInterval 30;
        UnicastOnly on;
        AdvSourceLLAddress on;
    AdvCurHopLimit 64;
        prefix 2001:3629::/64 {};
};
EOF

#start radvd
/usr/sbin/radvd -C $RA -p $RAP.pid
#如果有dhcpv6, 則在此加tchdpd的資訊
#start tchdpd
#/usr/sbin/tdhcpd --dns-server=2001:470:20::2 --dns-name=$PPP_IFACE.tunnel.ipv6.icybear.net --pid-file=$RAP.dhcp.pid  --local-id=test --log-level=debug $PPP_IFACE
# --local-id=tunnel.ipv6.icybear.net -L debug\

#update dns
ARPA=$(ipv6_rev $ADDR)
nsupdate << EOF
update delete $ARPA
update add $ARPA 10 ptr $PPP_IFACE.tunnel.ipv6.icybear.net
send
update delete $PPP_IFACE.tunnel.ipv6.icybear.net
update add $PPP_IFACE.tunnel.ipv6.icybear.net 10 aaaa $ADDR
send
EOF

exit 0

ipv6-down.d/radvd則與網頁相同:

#!/bin/sh

ADDR=$(echo $PPP_REMOTE | cut -d : -f 3,4,5,6)

if test x$ADDR = x ; then
    echo "Unable to generate IPv6 address"
    exit 0
fi

ADDR=2001:3629::$ADDR

#add route
route -6 add $ADDR/128 dev $PPP_IFACE

#generate radvd config
RAP=/etc/ppp/ipv6-radvd/$PPP_IFACE
RA=$RAP.conf

cat << EOF > $RA
interface $PPP_IFACE{
        AdvManagedFlag off;
        AdvOtherConfigFlag on;
        AdvSendAdvert on;
        MinRtrAdvInterval 5;
        MaxRtrAdvInterval 30;
        UnicastOnly on;
        AdvSourceLLAddress on;
    AdvCurHopLimit 64;
        prefix 2001:3629::/64 {};
};
EOF

#start radvd
/usr/sbin/radvd -C $RA -p $RAP.pid
#如果有dhcpv6, 則在此加tchdpd的資訊
#start tchdpd
#/usr/sbin/tdhcpd --dns-server=2001:470:20::2 --dns-name=$PPP_IFACE.tunnel.ipv6.icybear.net --pid-file=$RAP.dhcp.pid  --local-id=test --log-level=debug $PPP_IFACE
# --local-id=tunnel.ipv6.icybear.net -L debug\

#update dns
ARPA=$(ipv6_rev $ADDR)
nsupdate << EOF
update delete $ARPA
update add $ARPA 10 ptr $PPP_IFACE.tunnel.ipv6.icybear.net
send
update delete $PPP_IFACE.tunnel.ipv6.icybear.net
update add $PPP_IFACE.tunnel.ipv6.icybear.net 10 aaaa $ADDR
send
EOF

exit 0

其他如pppoe-server-options是從ppp/options來,加上:
plugin /etc/ppp/plugins/rp-pppoe.so
require-pap
ktune
nobsdcomp
noccp
novj

ipv6 ,

也就沒有特別要注意的了..

沒有留言:

張貼留言