因需要访问公司的服务器获取所需数据,运营商提供的公网IP会出现间歇性访问卡顿,导致业务有时会超时,故公司服务器安装L2TP服务端,机房安装客户端进行数据的交互。
翻了好多资料,总结了安装客户端的所有操作步骤。
1、安装环境
yum -y install xl2tpd ppp
2、配置
配置过程也并不复杂,主要有两个文件。首先就是配置 /etc/xl2tpd/xl2tpd.conf 文件。此文件原有的内容是做服务端用的,而作为客户端使用只需保留如下配置:
vi /etc/xl2tpd/xl2tpd.conf
[lac myvpn]
name = 账号
lns = VPN服务器ip
pppoptfile = /etc/ppp/peers/myvpn.xl2tpd
ppp debug = noname 连接用的账号名
lns vpn服务器ip
在配置
vi /etc/ppp/peers/myvpn.xl2tpd
remotename myvpn
user 账号"
password "密码"
ipcp-accept-local
ipcp-accept-remote
defaultroute
usepeerdns
persist
noauth
nobsdcomp
novj
novjccomp
noipdefault
mtu 1410
mru 1410remotename 必须为上个配置中第一行中括号里面设置的 lac 名称
user和password按照实际情况进行修改。
3、启动
systemctl start xl2tpd
sudo systemctl start xl2tpd
4、启动/关闭连接
连接
sh -c 'echo "c myvpn" > /var/run/xl2tpd/l2tp-control'
断开
sh -c 'echo "d myvpn" > /var/run/xl2tpd/l2tp-control'
使用 ifconfig 查看网络设备,如果出现 ppp0 这个网卡项,表示连接成功了。
如果连接不成功,可以尝试在日志中找原因。查看连接日志的命令:
tailf /var/log/messages
5、配置IP走指定路由
连接成功,并不是表示从现在开始,流量都是从 L2TP 连接走,需要配置路由
在vpn服务端的ip为192.168.20.53,但是我要访问北京192.168.8.0/24 网络的主机。这就需要手动加路由。比如192.168.8.20,我可以使用下面的命令:
route add -host 192.168.8.20 dev ppp0
6、配置全部流量走指定路由
1、启用内核转发
sudo echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sudo sysctl -p
2、添加默认路由
需要手动或通过脚本添加默认路由,使得所有流量都通过ppp0传输
目前测试会断开ssh,通过vpc连接发现会把xl2tpd服务卡掉--待观察,有好的实际操作可以提供下
sudo ip route add default dev ppp0
sudo route add default dev ppp0
7、其他测试
使用curl命令获取外网IP地址 curl -s https://ipinfo.io/ip
查看网站的ip
yum -y install bind-utils
dig +short www.example.com
查看服务器 路由信息 ip route show dev docker0