0

自动设置ip的批处理

Posted in DOS at 五月 22nd, 2010 / No Comments »

@echo off
title IP自动设置程序 by slq
color 0A

:START

:: 请设置上下“+”内的变量,其他地方不要修改!
:: +++++++++++++++++++++++++++++++++++++
:: ========方案1===========
set Project1=查障方案
set Nname1=本地连接
set Addr1=192.168.1.2
set Mask1=255.255.255.0
set Gway1=192.168.1.1
set Dnsa1=202.102.192.68
set Dnsb1=202.102.199.68

:: ========方案2===========
set Project2=内网方案
set Nname2=本地连接
set Addr2=134.70.216.7
set Mask2=255.255.255.254
set Gway2=134.70.216.1
set Dnsa2=202.102.192.68
set Dnsb2=202.102.199.68

:: ========手动设置默认方案===========
set Nname=本地连接
set Addr=192.168.1.168
set Mask=255.255.255.0
set Gway=192.168.1.1
set Dnsa=202.102.192.68
set Dnsb=202.102.199.68

:: ========本批处理文件名===========
set filename=设置网卡IP.cmd
:: 注意粗体字部分与文件名保持一致,否则菜单S无法使用!
:: +++++++++++++++++++++++++++++++++++++
:: !!!以下不要修改!!!
:: ========================================
cls
echo                           ╭─────────────╮
echo       ╭──────┤    IP地址自动设置程序       ├──────╮
echo       │                  ╰─────────────╯             │
echo       │ 为您自动或手动设置合适的IP,网关及DNS。             │
echo       ╰─────────────────────────╯
echo       ==========================================================
echo             1. 设置成静态IP (%Project1%)
echo                  IP 地 址:%Addr1%
echo                  网    关:%Gway1%
echo.
echo             2. 设置成静态IP (%Project2%)
echo                  IP 地 址:%Addr2%
echo                  网    关:%Gway2%
echo.
echo             3. 设置成静态IP (手动设置)
echo             4. 设置成动态IP (路由开放DHCP功能)
echo             S. 我要设置方案 (首次使用建议设置)
echo             Q. 退出程序
echo       ==========================================================
ECHO.
set type=
set /P type=      请选择 [1],[2],[3],[4],[S]或 [Q]:
if /I “%type%”==”1″ goto :fangan1
if /I “%type%”==”2″ goto :fangan2
if /I “%type%”==”3″ goto :gostatic
if /I “%type%”==”4″ goto :godhcp
if /I “%type%”==”S” goto :Setup
if /I “%type%”==”Q” goto :end
:godhcp
cls
echo.
echo 正在设置动态IP地址,请稍候!
netsh interface ip set address name=%Nname% source=dhcp >nul
netsh interface ip set dns name=%Nname% source=dhcp >nul
goto :finish

:fangan1
set Project=%Project1%
set Nname=%Nname1%
set Addr=%Addr1%
set Mask=%Mask1%
set Gway=%Gway1%
set Dnsa=%Dnsa1%
set Dnsb=%Dnsb1%
goto :Setip

:fangan2
set Project=%Project2%
set Nname=%Nname2%
set Addr=%Addr2%
set Mask=%Mask2%
set Gway=%Gway2%
set Dnsa=%Dnsa2%
set Dnsb=%Dnsb2%
goto :Setip

:gostatic
cls
set Project=手动设置
set /P Nname=      请输入网卡连接名称(默认为:%Nname%):
set /P Addr=      请输入 IP 地址(默认:%Addr%):
set /P Mask=      请输入子网掩码(默认:%Mask%):
set /P Gway=      请输入网关地址(默认:%Gway%):
set /P Dnsa=      请首选 DNS 地址(默认:%Dnsa%):
set /P Dnsb=      请备用 DNS 地址(默认:%Dnsb%):
goto :Setip

:Setip
cls
echo.
echo.
echo     ===========================================
echo       您选择的是“%Project%”
echo       当前网卡连接为 %Nname%
echo       将IP地址设置成 %Addr%
echo       子网掩码设置成 %Mask%
echo       网关地址设置成 %Gway%
echo       首选 DNS设置成 %Dnsa%
echo       备用 DNS设置成 %Dnsb%
echo     ===========================================
echo.
set confirm=
set /P confirm=      确认以上设置? 确认按任意键并回车, 否则按 [N] 返回主菜单重新设置!
if /I “%confirm%”==”n” goto :START
echo.
echo       正在进行网络设置,请稍侯!!
netsh interface ip set address name=%Nname% source=static addr=%Addr% mask=%Mask% gateway=%Gway% gwmetric=auto>nul
netsh interface ip set dns name=%Nname% source=static addr=%Dnsa% register=PRIMARY >nul
netsh interface ip add dns name=%Nname% addr=%Dnsb% index=2 >nul
goto :finish

:Setup
echo.
echo         请用记事本修改本文件后保存并关闭,然后重新执行本批处理 !
echo.
echo         按任意键继续!
pause>nul
IF %OP%NO==NO (FOR /f “delims=” %%I in (%0) do Set OP=%%~dpI)
%SystemRoot%system32
otepad.exe %OP%%filename%
goto :end

:finish
echo.
echo       设置完成!!按任一键查看您设置的网络信息!
pause >nul
echo.
ipconfig/all
echo.
echo    按任一键退出程序!
pause >nul

:END
exit.

Published in DOS

No Responses to “自动设置ip的批处理”

Leave a Reply

请输入算式结果(看不清请点击图片)
(必须)