1. pptp简介
PPTP,Point to Point Tunneling Protocol,点对点隧道协议,这是一种支持多协议虚拟专用网络(VPN)技术。远程用户能够通过装有点对点协议的系统安全访问公司网络。
PPTP使用GRE的扩展版本来传输用户PPP包。这些增强允许为在PAC和PNS之间传输用户数据的隧道提供底层拥塞控制和流控制。这种机制允许高效使用隧道可用带宽并且避免了不必要的重发和缓冲溢出。PPTP没有规定特定的算法用于低层控制,但它确实定义了一些通信参数来支持这样的算法工作
  1. 搭建PPTPD
  1. 实验环境:
  • 一台CentOS6.4-64位的操作系统,有两块网卡,其中eth0为外网网卡,配置固定IP为42.62.5.190/24,还有一块内网网卡,用于和内部网络通信,eth1,IP为172.16.1.1/24
  • 一台XP操作系统,配置IP为42.62.5.191/24,。实际环境中只要服务器固定IP能联网,XP系统能联网就行了
  1. 搭建
  1. 安装相关软件包
在本地光盘中有PPP安装包
可以使用yum直接安装
安装pptpd安装包,这个安装包需要下载,可以在http://rpmfind.net/搜索,然后下载对应的版本
  1. 配置
其中PPTPD的主配置文件为/etc/pptpd.conf,用户文件是/etc/ppp/chap-secrets,/etc/ppp/options.pptpd文件一般用户设置DNS的文件(ms-dns配置项),/etc/init.d/pptpd是启动脚本
  • 配置主配置文件
其中options表示启用/etc/options.pptpd文件;debug表示启用日志追踪,日志保存在/var/log/messages中;localip表示VPN服务器本地IP,可以设置为172.16.1.0/24网段的地址,也可以设置为其他网段;remoteip表示设置一个地址段供客户机连接使用
  • 配置DNS
 
  • 添加用户
用户的格式为:
用户名           服务器名            密码             IP
其中服务器名在/etc/ppp/options.pptpd文件中设置,默认的有pptpd
 
其中*代表随机分配IP地址
这样PPTPD就设置好了。接下来需要配置防火墙规则  
启动服务
  1. 设置iptables防火墙规则
  1. 验证
创建完网络后可以选择稍后再输入用户和密码,也可以现在就输入
右击刚刚创建的网络TESTà属 à 网络 à Internet协议 à 属性 à 高级 à 常规  à 去掉在远程网络上使用默认网关
然后就可以连接使用了
  1. 出现的故障
在搭建好的pptpd中,正常访问没有问题,但是随着连接人数的增多,可能会出现丢包等现象。可以在日志中查看到kernel: ppp: compressor dropped pkt的错误

。下面是解决问题的步骤:
  1. 发现问题
查看日志可以看到丢包错误
同时发现网卡的MTU变成1396
  1. 解决问题1
查看/etc/ppp/ip-up脚本

但是在/etc/ppp/目录下没有ip-up.local脚本
  1. 提供/etc/ppp/ip-up.local脚本

:wq保存退出后,给出x权限,然后重启pptpd服务即可解决

解决后网卡恢复正常

linux 搭建PPTP的更多相关文章

  1. Linux 搭建Nexus

    Linux 安装Maven和nexus代理仓库 1    说明 环境:redhat Enterprise Linux Server5.3-x64. 版本:Maven 3.0.5 ,Nexus-2.5. ...

  2. ubuntu 搭建PPTP VPN服务器

    上一篇文章介绍了如何在Ubuntu服务器上搭建IPSEC L2TP VPN服务器.继续介绍如何在Ubuntu服务器上搭建PPTP VPN服务器. 首先安装以下所需包 #apt-get install ...

  3. Linux 搭建SVN 服务器(转)

    一. SVN 简介 Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据. 这些数据放置在一个中央资料档案库 (repository) 中 ...

  4. 原 Linux搭建SVN 服务器2

    原 Linux搭建SVN 服务器 发表于1年前(2014-08-05 17:55)   阅读(12257) | 评论(3) 31人收藏此文章, 我要收藏 赞3 摘要 Linux搭建SVN 服务器 目录 ...

  5. 原 Linux搭建SVN 服务器

    原 Linux搭建SVN 服务器 发表于1年前(2014-08-05 17:55)   阅读(12257) | 评论(3) 31人收藏此文章, 我要收藏 赞3 摘要 Linux搭建SVN 服务器 目录 ...

  6. Linux搭建SVN 服务器

    Linux搭建SVN 服务器 1          安装SVN 2          使用客户端连接 2.1       使用windows的客户端 2.2       使用Linux下的命令行 3  ...

  7. Linux 搭建SVN server

    一. SVN 简单介绍 Subversion(SVN) 是一个开源的版本号控制系統, 也就是说 Subversion 管理着随时间改变的数据. 这些数据放置在一个中央资料档案库 (repository ...

  8. Linux搭建SVN 服务器(转)

    转自:http://my.oschina.net/lionel45/blog/298305 Linux搭建SVN 服务器 作者: 沈小然    日期:2014年 8月 5日 1          安装 ...

  9. Linux 搭建SVN 服务器

    一. SVN 简介 Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据. 这些数据放置在一个中央资料档案库 (repository) 中 ...

随机推荐

  1. 运算符、单双分支&多分支、while循环

    一 .运算符: 1. 算术运算符: " + "." - " ." * " ." / " 分别为加.减.乘.除. % 是& ...

  2. 在虚拟机中安装metasploit官方攻防模拟器

    首先我们要在windwos下载安装perl环境.下载地址: http://pan.baidu.com/s/1i3GLKAp 然后我们安装 点击next 我同意,next next next,然后他会安 ...

  3. Awesome-Link——我的积累、推荐和分享

    积累一些自己看过的比较好的技术博客.以后忘记了可以回过头来看,毕竟有些博客已经写的非常的好了.有些自己写的也会列举在上面.同时还包含一些好用的插件.工具.网站等等. github准备长期更新,欢迎st ...

  4. bzoj:1656 [Usaco2006 Jan] The Grove 树木

    Description The pasture contains a small, contiguous grove of trees that has no 'holes' in the middl ...

  5. CF 610E. Alphabet Permutations

    题目:http://codeforces.com/problemset/problem/610/E 如果存在c1,c2在原串相邻且在询问串中c1在c2前面的话,把它们在原串出现次数加起来记作sum,那 ...

  6. 动态链接库(DLL)编写经验

    我首先说明DLL的生成方法,之后再补充一些特殊之处. 生成方法: 1.对需要导出的类,在头文件中添加 #ifdef CLASS _API #define CLASS_API _declspec(dll ...

  7. webpack的安装与使用

    在安装 Webpack 前,你本地环境必须已安装nodejs. 可以使用npm安装,当然由于 npm 安装速度慢,也可以使用淘宝的镜像及其命令 cnpm,安装使用介绍参照:使用淘宝 NPM 镜像. 使 ...

  8. ES6中promise的使用方法

    先看看ES5中异步编程的使用. let ajax = function (callBlack) { setTimeout(function () { callBlack && call ...

  9. python原始字符串

    str1='let's go' File "<input>", line 1 str1='let's go' ^ SyntaxError: invalid syntax ...

  10. 数组的创建和各种API

    数组的创建方式: 1. 数组直接量 var arr = [] // 创建一个空数组 var arr = [1,2,3,4] // 创建同时初始化元素 2. 实例化对象 var arr=new Arra ...