http://0cloud.cc/zb_users/upload/2018/12/20181204123819_37314.rpm
http://0cloud.cc/zb_users/upload/2018/12/20181204123834_61674.rpm
http://0cloud.cc/zb_users/upload/2018/12/20181204123850_10708.rpm
http://0cloud.cc/zb_users/upload/2018/12/20181204123902_57859.rpm
2.挂载U盘,拷贝rpm安装包到CentOS
// 加载USB模块
modprobe usb-storage
// 查看U盘设备
fdisk -l
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 2099199 1048576 83 Linux
/dev/sda2 2099200 41943039 19921920 8e Linux LVM
/dev/sdb4 2048 14039 2015920 8e FAT32
// 这里假设U盘是sdb4
// 建立要挂载的目录
mkdir -p /mnt/usbdisk
// 挂载U盘
mount /dev/sdb4 /mnt/usbdisk
// 卸载U盘
umount /mnt/usb
---------------------
3.安装拨号工具及其依赖
// 进入安装包目录
cd /mnt/usbdisk/rp-pppoe
// 安装
rpm -ivh libpcap-1.5.3-9.el7.x86_64.rpm ppp-2.4.5-33.el7.x86_64.rpm net-tools-2.0-0.22.20131004git.el7.x86_64.rpm rp-pppoe-3.11-7.el7.x86_64.rpm
4.配置pppoe拨号
// 查看当前以太网卡代号
ip address
enp1s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
ether 20:1b:06:3d:22:05 txqueuelen 1000 (Ethernet)
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
// 那么我这的以太网卡代号就是 enp1s0 (等下要用到)
// 开始设置
pppoe-setup
// 输入ISP提供的账户(拨号账号)
Enter your Login Name (default root):sz20012231@163.gd
// 输入以太网卡代号,根据刚刚查到的(enp1s0)
(default eth0):enp1s0
// 配置:若长时间连线,连线会被自动中断(否 no)
Enter the demand value (default no): no
// 配置主DNS服务器(8.8.8.8)
Enter the DNS information here:8.8.8.8
// 配置次DNS服务器(8.8.4.4)
Enter the secondary DNS server address here:8.8.4.4
// 两次输入账户密码以确认(拨号密码)
Please enter your Password:
Please re-enter your Password:
// 配置普通账户是否有网络连接权限(允许 yes)
normal user to start or stop DSL connection (default yes):yes
// 配置防火墙(无限制 0)
Choose a type of firewall (0-2): 0
// 配置是否开机自动拨号连接(开启 yes)
Please enter no or yes (default no):yes
// 确认刚填写的配置信息(确认 y)
Accept these settings and adjust configuration files (y/n)? y
// 开启拨号网络
ifup ppp0
---------------------
5.自动配置pppoe脚本
如果你觉得一步步输入确认很麻烦,那么,这个自动配置代码将很有用。
// 请保存为ppp_auto.sh
#!/bin/bash
ppp_user=$1
password=$2
eth=$3
[ -z "$ppp_user" ]&&{
echo "没有指定拨号账号..."
echo "示例: $0 user password ethx"
exit 0
}
[ -z "$password" ]&&{
echo "没有指定拨号密码..."
echo "示例: $0 user password ethx"
exit 0
}
[ -z "$eth" ]&&{
echo "没有指定拨号网卡..."
echo "示例: $0 user password ethx"
exit 0
}
echo "请等待,正在进行配置..."
ppps=`ps -ef|grep ppp0|grep -v "grep"|wc -l`
if [ $ppps -gt 0 ];then
ifdown ppp0;
fi
if [ -d "/etc/sysconfig/network-scripts/ifcfg-ppp0" ];then
echo "" > /etc/sysconfig/network-scripts/ifcfg-ppp0
else
touch /etc/sysconfig/network-scripts/ifcfg-ppp0
fi
echo "USERCTL=yes" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "BOOTPROTO=dialup" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "NAME=DSLppp0" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "DEVICE=ppp0" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "TYPE=xDSL" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "ONBOOT=yes" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "PIDFILE=/var/run/pppoe-adsl.pid" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "FIREWALL=NONE" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "PING=." >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "PPPOE_TIMEOUT=80" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "LCP_FAILURE=3" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "LCP_INTERVAL=20" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "CLAMPMSS=1412" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "CONNECT_POLL=6" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "CONNECT_TIMEOUT=60" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "DEFROUTE=yes" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "SYNCHRONOUS=no" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "ETH=$eth" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "PROVIDER=DSLppp0" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "USER=$ppp_user" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "PEERDNS=no" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
echo "DEMAND=no" >> /etc/sysconfig/network-scripts/ifcfg-ppp0
line1=`cat /etc/ppp/chap-secrets|grep "*"|wc -l`
if [ $line1 -lt 1 ];then
echo "\"$ppp_user\" * \"$password\"" > /etc/ppp/chap-secrets
else
user=`cat /etc/ppp/chap-secrets|grep "*"|awk '{print$1}'`
passwd=`cat /etc/ppp/chap-secrets|grep "*"|awk '{print$3}'`
sed -i "s/$user/\"$ppp_user\"/g" /etc/ppp/chap-secrets
sed -i "s/$passwd/\"$password\"/g" /etc/ppp/chap-secrets
fi
line2=`cat /etc/ppp/pap-secrets|grep "*"|wc -l`
if [ $line1 -lt 1 ];then
echo "\"$ppp_user\" * \"$password\"" >> /etc/ppp/pap-secrets
else
user=`cat /etc/ppp/pap-secrets|grep "*"|awk '{print$1}'`
passwd=`cat /etc/ppp/pap-secrets|grep "*"|awk '{print$3}'`
sed -i "s/$user/\"$ppp_user\"/g" /etc/ppp/pap-secrets
sed -i "s/$passwd/\"$password\"/g" /etc/ppp/pap-secrets
fi
ck=`cat /sbin/ifup|grep "routeok"|wc -l`
if [ $ck -lt 1 ];then
sed -i "s/exec \${OTHERSCRIPT} \${CONFIG} \$2//g" /sbin/ifup
echo "#route" >> /sbin/ifup
echo "{" >> /sbin/ifup
echo "sleep 10" >> /sbin/ifup
echo "route_ip=\`/sbin/pppoe-status|grep \"inet\"|awk '{print\$4}'|awk -F\/ '{print\$1}'\`" >> /sbin/ifup
echo "len=\`echo \$route_ip|wc -c\`" >> /sbin/ifup
echo "if [ \$len -gt 10 ];then" >> /sbin/ifup
echo " route add default gw \$route_ip dev ppp0" >> /sbin/ifup
echo "fi" >> /sbin/ifup
echo "}&" >> /sbin/ifup
echo "" >> /sbin/ifup
echo "exec \${OTHERSCRIPT} \${CONFIG} \$2" >> /sbin/ifup
echo "" >> /sbin/ifup
echo "#routeok" >> /sbin/ifup
fi
ifup ppp0
if [ $? -eq 0 ];then
echo "ifup ok"
else
echo "配置失败,请重新配置,比如重新选择网卡或者确认账号密码?"
fi
---------------------
执行:./ppp_auto.sh sz20012231@163.gd 123456 enp1s0 即可自动配置
第一个参数是账号,第二个是密码,第三个是以太网卡代号