XP部署VPN服务实现免费上网
最近学校组织实习给大家每人分了一台四核的电脑,这么好的电脑光写代码肯定是浪费了,那我们是不是可以干点其他的呢?
大家知道我们学校有NJUT的免费无线网络,但是只能够访问学校内网,于是乎我在想我们能不能通过实习机房的电脑来实现免费上公网呢?答案当然是可以的。
这里我们要用到一个技术叫做VPN:
虚拟专用网络(Virtual Private Network ,简称VPN)指的是在公用网络上建立专用网络的技术。其之所以称为虚拟网,主要是因为整个VPN网络的任意两个节点之间的连接并没有传统专网所需的端到端的物理链路,而是架构在公用网络服务商所提供的网络平台,如Internet、ATM(异步传输模式〉、Frame Relay (帧中继)等之上的逻辑网络,用户数据在逻辑链路中传输。它涵盖了跨共享网络或公共网络的封装、加密和身份验证链接的专用网络的扩展。VPN主要采用了隧道技术、加解密技术、密钥管理技术和使用者与设备身份认证技术。
了解背景知识,我们就开始搭建我们的VPN服务器了。
因为实习机房的电脑是XP的操作系统,所以我们现在已XP为例:
修改注册表,把HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters下的IPEnableRouter项的值改为1。
如果这里不改,在后面安装NAT会没有提示的失败,然后设置的时候系统会提示“必须首先安装NAT”。
开始--控制面板--管理工具--服务--启动四个关键服务(Workstation、Telephony、Remote Access Connection Manager、Routing and Remote Access)并将其设置自动启动。其中,Routing and Remote Access启动后,在“网络连接”里面会多出一个“传入的连接”。
控制面板--网络连接--传入的连接
常规选项卡(勾选:虚拟专用网,允许他人通过interner或其它网络以“隧道操作”方式建立到我的计算机专用连接)
用户选项卡(勾选那些用户可以远程VPN连接)
网络选项卡(TCP/IP地址指派:手动指定不同于服务器网段的IP地址,如服务器IP:192.168.1.1段,那么此处填192.168.2.1段)。
下面我们来启动NAT服务:
“开始” - “运行” (或者Win+R),输入netsh回车。这时会有一个命令提示符(Console)打开,然后输入:
routing回车(Vista下自带的netsh貌似没这个命令,需要将Windows2003里带的ippromon.dll和ipmontr.dll拷贝到Vista的\windows\system32,然后在netsh里面执行add helper ??.dll。)
ip回车(这里的ip就是指的“ip”这两个字母,不只IP地址)
nat回车
install回车
add interface name="内部" mode=private回车
add interface name="本地连接" mode=full回车
在netsh routing ip>那步,执行show interface,可以看到类似下面的内容:
状态 类型 接口
--------- ------------------
启用 环回 环回
启用 内部 内部
启用 专用 本地连接
我们这里写的"内部"就是这个表中类型为"内部"的接口对应的接口名称。
"本地连接"是作为服务器的电脑连接换联网的连接名称,默认是这个,如果不是的话改成自己的连接名称就好~
如果最后这两行指令输入没报错,NAT的配置应该就成功了。输入show interface回车,应该出现下面的内容:
NAT 内部 配置
---------------------------
模式 : 专用接口
NAT 本地连接 配置
---------------------------
模式 : 地址和端口转换
这样我们的VPN服务器就搭建好了。
下面我们来配置客户端,考虑到大家现在都是Win7的操作系统,所以我们以Win7为例。
1、打开网络连接,点击“设置新的连接或网络”。
2、选择“连接到工作区”,创建VPN连接。
3、输入Internet地址,就是你实验室的IP地址。
4、输入您的VPN用户名和密码。
5、关闭设置页面。
6、点击“连接”按钮,进行连接,连接成功后即可通过VPN访问外网了。