如何利用VPN共享上网
VPN(Windows XP和Windows7)
2011年12月09日 星期五 4:55 P.M.
拨号连接不上
Windows XP/Vista搭建VPN+NAT+PPPOE代理服务器,双机 XP单网卡 VPN+ADSL共享上网
2010年05月29日 星期六 13:16
Windows XP/Vista搭建VPN+NAT+PPPOE代理服务器
一、服务器的配置
1.修改注册表,把
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters下的
IPEnableRouter项的值改为1。
批处理代码修改
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters"
/v"IPEnableRouter" /t REG_DWORD /d "1" /f
REG文件导入修改
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"IPEnableRouter"=dword:00000001

如果这里不改,在后面安装NAT会没有提示的失败,然后设置的时候系统会提示“必须首先安装NAT”。
2.将Workstation、Telephony、Remote Access Connection Manager、Routing and Remote Access四个服务的属性中启动类型改为“自动”,并启动这些服务。
其中,Routing and Remote Access启动后,在“网络连接”里面会多出一个“传入的连接”

3.建立“传入的连接”。
依次打开“控制面板” – “网络连接”,选择左侧“网络任务”中的“创建一个新的连接”
网络连接类型选择“设置高级连接”

高级连接选项中选择“接受传入的连接”

然后下一步下一步~~到“传入的虚拟专用网(VPN)连接”,选择“允许虚拟专用连接”

再下一步,选择用户权限,可以添加新用户,也可以选择当前Windows用户。建议在这里添加一个用户,用户名和密码就是在客户端建立拨号时要使用的用户名和密码。

在网络软件页,选择“Internet协议(TCP/IP)”,打开其属性,网络访问中选中“允许呼叫方访问我的局域网”。在“TCP/IP地址指派”中,使用“指定TCP/IP地址”,并填入一个未被使用过的局域网IP段,可以根据允许的用户数设定IP的个数。

然后下一步一直到完成即可。
4.“开始” – “运行” (或者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回车

"内部" 是指的内部接口
"本地连接" 是指的名称为"本地连接" 网卡接口  也可能是"本地连接1"、"本地连接2" 或其他的网卡名称
netsh routing ip show interface 显示接口名称
在netsh routing ip>那步,执行show interface,可以看到类似下面的内容:
状态
类型
接口
———
———
———
启用
环回
环回
启用
内部
内部
启用
专用
本地连接
我们这里写的”内部”就是这个表中类型为”内部”的接口对应的接口名称。
“本地连接”是作为服务器的电脑连接换联网的连接名称,默认是这个,如果不是的话改成自己的连接名称就好~
如果最后这两行指令输入没报错,NAT的配置应该就成功了。输入show interface回车,应该出现下面的内容:
NAT 内部 配置
—————————
模式 : 专用接口
NAT 本地连接 配置
—————————
模式 : 地址和端口转换
至此,服务器端配置完毕,下面说从客户端怎么拨号。
二、客户端的配置
XP
“控制面板” → “网络连接”→“创建一个新的网络连接”→“网络连接类型”选择“连接到我的工作场所的网络”→ 选择“虚拟专用网络连接”→“公司名”就是给VPN连接取个名字,如“VPN”→“公用网络”中选择“不拨初始连接”→“VPN服务器选择”中,输入服务器IP地址 → 可在桌面添加快捷方式 → 在弹出的“连接VPN”窗口中输入用户名和密码,连接就可以了~
VISTA or Windows 7
可以参照下面的图~“网络和共享中心”→“设置新的连接或网络”→“连接到工作区”→“使用我的Internet连接”→输入服务器IP地址和连接的名称→输入用户名和密码(域不用填写),然后就可以连接了~~




批处理完成代码
@echo off
echo.
echo.
echo    启动路由服务 
echo     by 风飞雪
echo.
echo.
pause

echo 停止ICS共享服务
@net stop SharedAccess>nul
echo.
@net stop RasAuto>nul
@net stop RemoteAccess>nul
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v "IPEnableRouter" /t REG_DWORD /d "1" /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasMan\Parameters" /v "ProhibitIPsec" /t REG_DWORD /d "1" /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RemoteAccess\Parameters" /v "IPEnableRouter" /t REG_DWORD /d "0" /f
::关闭防火墙
netsh firewall set opmode disable
:: 设置所有设备都需要身份验证 STANDARD - 所有设备都需要身份验证。NODCC    - 直接连接设备没有身份验证。BYPASS  - 所有设备都不用身份验证。 
netsh ras set authmode STANDARD
netsh ras set authmode NODCC
::设置记帐提供者。windows 通过 Windows 日志工具记帐;radius 通过 RADIUS 服务器记帐; none 不执行记帐
netsh ras aaaa set accounting provider =none
:: 设置用户授权,该用户不能为tsinternetuser support_388945a0等。 
netsh ras set user administrator permit
::允许客户申请自己的 IP 地址。
netsh ras ip set addrreq allow
::从静态 IP 地址池中删除所有范围
netsh ras ip delete pool
::设置静态池范围 ,要用标准的局域网地址,避免将来在访问internet时候地址转发错误 
netsh ras ip add range 10.0.0.1 10.0.0.254

:: 设置静态地址池模式 
netsh ras ip set addrassign pool
::允许呼叫方访问我的局域网
netsh ras ip set access all

::设置服务为自启动
@sc config lanmanworkstation start= auto>nul
@sc config TapiSrv start= auto>nul
@sc config RasAuto start= auto>nul
@sc config RemoteAccess start= auto>nul
echo 开启NAT功能
netsh routing ip nat install
echo 增加内部接口
::添加nat接口内部私有模式 
netsh routing ip nat add interface name="内部" mode=private
echo 增加本地连接接口
::添加nat接口本地连接全转发 
netsh routing ip nat add interface name="本地连接" mode=full
echo.
echo.
@net start lanmanworkstation>nul
@net start TapiSrv>nul
@net start RasAuto>nul
echo.
echo 正在启动路由服务
@net start RemoteAccess>nul
echo.
echo 路由服务安装完成!
pause
以上是Windows XP/Vista搭建VPN+NAT代理服务器,如果要增加PPPOE服务功能
先下载RASPPPOE_099 并安装WINPPPOE.INF  PPPOE协议
RASPPPOE_099下载地址www.raspppoe/files/RASPPPOE_099.ZIP
这里要选上你的网卡 (我的网卡是Broadcom NetLink (TM)Gigabit Ethernet)
后记:最后本人亲自实践有两台,电脑A和电脑B 。A可以通过拨号上网连接到因特网。B则不可以。
通过以上VPN连接以及NAT地址转换后。B电脑可以拨号到A。但是无法访问网络。最后我研究发现。其实问题出在netsh 这里。这里的意思就是把本地连接的 所有包含网关和DNS共享给分机B 。因此问题就出在DNS 和网关这里。只要把这个问题解决即可让电脑B上网了。
我是通过做如下修改实现了。
1电脑A的地址跟电脑B的地址必须在一个网段。我这里设置的是 A:192.168.3.232    , 255.255.255.0
电脑B为:192.168.3.228  , 255.255.255.0
2电脑A先拨号连接上因特网 然后开始->运行->CMD->ipconfig /all
3.然后更改电脑A的本地连接把其中的 网关和DNS添加进去
比如的图上面网关是
Default Gateway . . . . . . . . . : 221.213.217.249
DNS Servers . . . . . . . . . . . : 221.3.131.12
                                            221.3.131.11
通常网关填写.1的地址就是了。这里我的网关填写成 221.213.217.1
DNS设置成PPP的拨号的DNS 221.3.131.12
然后确定如图
4 双击本地连接-> 选择属性 ->然后选择 高级-> 点击设置 ->高级 然后点击 ADSL 点设置 如图勾上
5 同样 选择本地连接然后 设置
6然后选 虚拟专用网络 点设置 如图
设置好了之后确定 关闭即可。
7 然后在电脑 A上 打开 开始-.>运行->cmd
添加XP路由表 命令如下 比如要打开 60.0.0.0开头的网站 添加如下
route add 60.0.0.0 mask 255.0.0.0 192.168.3.228
                | --要打开的网站------------| 电脑B的IP地址|
电脑B拨号连接上电脑A 之后 就可以上网了
我也没具体优化其中的操作 都是尝试性的操作,可能有部分设置是不需要的。只是提供一个思路给大家。只有一个目的就是能上网

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。