標籤:伺服器 nat route wifi 共用上網
這是以前在學校時破解共用上網所寫的批處理代碼,這個可能是我找的舊版本的了,當時是保密配方,剛找到EXE版本反編譯出代碼來,沒時間檢查它了,我記得我改過,新版的找不到了,畢業後根本沒弄過了,代碼更不熟悉了,但是這個比共用衛士好用。而且現在那個無線WIFI的發射器這麼流行,還有金山那些軟體商都紛紛提供軟體版的共用上網的了,用不著這個老方法了吧。不過這個方法還是有不可比擬的地方,就是比WIFI的距離遠,內網透傳,這就是技術達到落地的效果,哈哈~~
@echo off
mode con cols=84 lines=22
title ---簡易強大的共用上網設定程式--- QQ:938009139
color 79
:menu
cls
echo.
echo 建立配置共用上網 --由OPQ基於Win2003製作
echo ------------------------------------------------------------
echo [1] 按 1 鍵 開始建立本機共用上網服務
echo [2] 按 2 鍵 查看當前配置資訊
echo [3] 按 3 鍵 添加共用接入使用者
echo [4] 按 4 鍵 刪除共用接入使用者
echo [5] 按 5 鍵 停用共用上網服務
echo [6] 按 6 鍵 啟用對32位Win7 系統支援
echo [7] 按 7 鍵 啟用對32位Vista系統支援
echo [m] 按 m 鍵 --------返回菜單--------
echo.
SET Choice=
SET /P Choice= 請選擇要進行的操作:
IF /I ‘%Choice:~0,1%‘==‘1‘ GOTO cmdvpn
IF /I ‘%Choice:~0,1%‘==‘2‘ GOTO showset
IF /I ‘%Choice:~0,1%‘==‘3‘ GOTO adduser
IF /I ‘%Choice:~0,1%‘==‘4‘ GOTO deluser
IF /I ‘%Choice:~0,1%‘==‘5‘ GOTO stopvpn
IF /I ‘%Choice:~0,1%‘==‘6‘ GOTO win7_32
IF /I ‘%Choice:~0,1%‘==‘7‘ GOTO vista
IF /I "%Choice%"=="m" GOTO menu
exit
:cmdvpn
@echo off
cls
echo.
echo ---------確保是管理使用者許可權運行本程式,下面仔細閱讀內容,按提示操作.---------
echo.
set Nic=本地串連
set Mask=255.255.255.0
echo 1.如果你可連網的網卡名字不叫[本地串連]而是[本地串連2]或[無線網路串連]之類的,
echo 請在下面游標處輸入其名稱,如:本地串連3,否則按斷行符號鍵直接跳過!
set /p Nic=
echo -----------------------------------------------------------------------------------
echo 當前共用設定將選用名稱為:%Nic% 的網卡! [此處如弄錯誤,請關閉本程式,重新開啟]
echo -----------------------------------------------------------------------------------
echo.
echo 2.現在請停用(禁用)你的"%Nic%",停用(禁用)後返回本程式,按任意鍵將繼續,按要求填好!
pause>nul
echo.
set /p localip=請輸入當前分配你上網的IP地址:
set /p Mask=請輸入你分配的IP地址的子網路遮罩: 255.255.255.0 (預設,即斷行符號;如不是,請輸入:
set /p Gway=請輸入你分配IP地址的網關所在:
set /p Dns1=請輸入適你當地的首選DNS地址:
set /p Dns2=請輸入適你當地的次選DNS地址:
echo ------------------------------------------------------
echo 進行中 %Nic% 的IP設定,請稍等...
echo. IP地址 = %localip%
echo. 子網路遮罩 = %Mask%
netsh interface ip set address name=%Nic% source=static addr=%localip% mask=%Mask% >nul
echo. 網關 = %Gway%
netsh interface ip set address name=%Nic% gateway=%Gway% gwmetric=1 >nul
echo. 首選DNS = %Dns1%
netsh interface ip set dns name=%Nic% source=static addr=%Dns1% register=PRIMARY >nul
echo. 備用DNS = %Dns2%
netsh interface ip add dns name=%Nic% addr=%Dns2% index=2 >nul
set Addr2=192.168.66.5
set Mask2=255.255.255.0
netsh interface ip add address %Nic% %Addr2% %Mask2%
cls
echo 現在請重新啟用名為"%Nic%"的網卡,啟後返回本程式,按任意鍵將會繼續!
echo 啟動或關閉配置時的影響服務...
sc config sharedaccess start= disabled
net stop "Windows Firewall/Internet Connection Sharing (ICS)"
net stop SharedAccess
sc config "Remote Procedure Call (RPC)" start= auto
net start "Remote Procedure Call (RPC)"
sc config RemoteRegistry start= auto
net start "RemoteRegistry"
sc config "RemoteAccess" start= auto
net start "RemoteAccess"
sc config "Workstation" start= auto
net start "Workstation"
net start "Computer Browser"
@set errorlevel=>nul
@cls
@echo --------請輸入使用者名稱斷行符號:即建立撥號連線使用者--------:
@set/p "vpnusername="
@echo --------請輸入密碼斷行符號:即撥號連線使用者的密碼--------:
@set/p "vpnuserpass="
net user %vpnusername% %vpnuserpass% /add
if errorlevel=1 cls &&cls &&echo "使用者可能已存在,建立不成功!" &&pause>nul
echo 為了安全該使用者不能為tsinternetuser support_388945a0等
net localgroup users %vpnusername% /del
echo 因此為使用者名稱添加授權撥入策略,以保系統許可權安全。
netsh ras set user %vpnusername% permit
echo 設定靜態位址集區模式
netsh ras ip set addrassign pool
echo 設定靜態池範圍 ,要用標準的區域網路地址,避免將來在訪問internet時候地址轉寄錯誤。
netsh ras ip add range 192.168.66.6 192.168.66.88
echo 使用位址集區的方式分配
netsh ras ip set addrassign method = pool
echo 開啟TCP/IP轉寄,必須首先安裝NAT
FOR /F "skip=3 tokens=3" %%i IN (‘@reg query "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v IPEnableRouter‘) do @if %%i NEQ 0x1 (@reg add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /v IPEnableRouter /t REG_DWORD /d 1 /f)
echo 添加NAT協議支援
netsh routing ip nat install
echo 添加nat借口內部私人模式 [win2000中內部不容許在圖形介面下添加]
netsh routing ip nat add interface name="內部" mode=private
echo 添加nat介面本地串連全轉寄
netsh routing ip nat add interface name="%Nic%" full
netsh routing ip igmp delete interface 內部
netsh routing ip igmp install
netsh routing ip igmp add interface 內部 igmpprototype=IGMPRTRV2 ifenabled=enable robustvar=2 startupquerycount=2 startupqueryinterval=31 genqueryinterval=125 genqueryresptime=10 lastmemquerycount=2 lastmemqueryinterval=1000 accnonrtralertpkts=YES
netsh routing ip igmp add interface name="%Nic%" igmpprototype=IGMPPROXY ifenabled=enable
echo 設定刪除除了登陸資訊記錄外的ipsec、remoteaccess記錄或警告日誌..
@reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasMan\Parameters /v ProhibitIPsec /t REG_DWORD /d 00000000 /f
@reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RemoteAccess\Parameters /v LoggingFlags /t REG_DWORD /d 00000000 /f
echo %Nic%的IP地址為 %localip%
echo 添加預設閘道地址為 %Gway%的預設路由支援
route add 0.0.0.0 mask 0.0.0.0 %Gway%
echo 添加一個永久的路由表
route -p add 192.168.66.0 mask 255.255.255.0 %localip%
echo 關閉一些服務以保證網路安全
net stop Schedule
net stop CLIPBOOK
rem net stop Server
cls
echo 已經建立好共用上網接入:
echo ----------------------------------------------------------------------------------
echo 本機開設預設閘道地址:192.168.66.5 分機接入可用的IP位址範圍:192.168.66.6~88
echo 1.開啟網路連接,右鍵“傳入的串連”屬性,
echo 2.在"Virtual Private Cloud"下"允許他人通過Internet或其他網路以"隧道操作"..."前打上勾,確定!
echo 分機設定好IP地址後用撥號連線:使用者名稱%vpnusername%密碼為 %vpnuserpass% 入虛擬私人網路
echo ----------------------------------------------------------------------------------
pause>nul
goto menu
:showset
cls
@netsh interface show interface
@netsh ras ip show config
@netsh ras show use
@route print
pause >nul
goto menu
:adduser
@set errorlevel=>nul
@echo 請輸入要建立的使用者名稱:
@set/p "vpnusername="
@echo 請為使用者佈建一個密碼:
@set/p "vpnuserpass="
net user %vpnusername% %vpnuserpass% /add
if errorlevel=1 cls &&echo MSGBox("使用者可能已存在,建立不成功!")
netsh ras set user %vpnusername% permit
net user %vpnusername% %vpnuserpass%
pause >nul
goto menu
:deluser
@set errorlevel=>nul
@echo 請輸入要刪除的使用者名稱:
@set/p "vpnusername="
net user %vpnusername% /del
if errorlevel=1 cls &&echo"使用者可能已刪除或許可權不足,刪除不成功!" && pause>nul
pause >nul
goto menu
:stopvpn
route -f
route delelte 0.0.0.0
net stop "RemoteAccess"
arp -d
echo 重新整理本地緩衝區網域名稱解釋記錄!
ipconfig /flushdns
echo 共用上網服務已停止!
pause >nul
goto menu
:win7_32
copy Win7_x64\ipmontr.dll %systemroot%\system32
copy Win7_x64\ippromon.dll %systemroot%\system32
netsh add helper ipmontr.dll || netsh delete helper ipmontr.dll && netsh add helper ipmontr.dll
netsh add helper ippromon.dll || netsh delete helper ippromon.dll && netsh add helper ippromon.dll
netsh routing ip nat install add interface name="%Nic%" mode=full
netsh routing ip nat install add interface name="內部" mode=private
echo.
echo 已使32位Win7系統支援共用上網!請再在菜單中選擇"1"進行開啟。
echo 64位Win7系統可能也已獲得支援!(待測試)也可做為對Win2008R2的修複!
pause >nul
goto menu
:vista
copy Vista_x86\ipmontr.dll %systemroot%\system32
copy Vista_x86\ippromon.dll %systemroot%\system32
netsh add helper ipmontr.dll || netsh delete helper ipmontr.dll && netsh add helper ipmontr.dll
netsh add helper ippromon.dll || netsh delete helper ippromon.dll && netsh add helper ippromon.dll
echo.
echo 已使32位Vista系統支援共用上網!請再在菜單中選擇"1"進行開啟。
echo 64位Vista系統可能也已獲得支援!(待測試) 也可做為對Win2003的修複!
pause >nul
goto menu
記得還有小一部分內容是要在伺服器上設定的。
通過伺服器系統的軟ROUTE服務+NAT提供撥號共用上網(校園版)