[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[网络连接] 利用批处理将自动获取的IP地址设置成固定的IP地址

  1. @echo off
  2. for /f "delims=: tokens=2" %%a in ('ipconfig /all^|FIND /i "IPv4 地址"') do set IP=%%a
  3. for /f "delims=: tokens=2" %%i in ('ipconfig /all^find /i "默认网关"') do set gw=%%i
  4. for /f "delims=: tokens=2" %%n in ('ipconfig /all^find /i "子网掩码"') do set mask=%%n
  5. for /f "delims=: tokens=2" %%k in ('ipconfig /all^find /i "DNS 服务器"') do set Dns1=%%k
  6. netsh interface ip set address "无线网络连接" source=static addr=%IP% mask=%mask% gateway=%gw% gwmetric=1
  7. netsh interface ip set dns "无线网络连接" static %Dns1%
  8. pause
复制代码
这个为什么不好用?本人新手求大神解答

本帖最后由 beatfan 于 2015-5-16 10:35 编辑
ygqiang 发表于 2015-5-15 22:48



    一般中文系统 使用“以太网适配器”  

不能默认使用空格为分割符,所以适用于 本地连接 还有 无线网络连接 等,不适用于 本地连接 2  、 无线网络连接 2 等,经过测试,本地连接 2 会识别成 本地连接


将 本地连接*和 无线网络连接* 配置成 固定ip
@echo off
for /f "tokens=2* delims=本:" %%i in ('ipconfig /all^|find /i "以太网适配器"') do (
set staticip="本%%i"
)
for /f "tokens=2* delims=无:" %%i in ('ipconfig /all^|find /i "无线局域网适配器"') do (
set wstaticip="无%%i"
)
echo 正在本地连接配置ip,子网掩码和网关
netsh interface ipv4 set address %staticip% static 192.168.10.123 255.255.255.0 192.168.10.1
echo 正在配置本地连接DNS
netsh interface ipv4 set dnsservers %staticip% static 192.168.10.253
echo 本地连接配置成功

echo 正在无线连接配置ip,子网掩码和网关
netsh interface ipv4 set address %wstaticip% static 192.168.10.123 255.255.255.0 192.168.10.1
echo 正在配置无线连接DNS
netsh interface ipv4 set dnsservers %wstaticip% static 192.168.10.253
echo 无线网络连接配置成功
閑的時候多難過

TOP

笨一点的方法,要知道本地连接名称,如本地连接 2

netsh interface ipv4 set address "本地连接 2" stat ...
beatfan 发表于 2015-5-15 17:26
  1. ::用ipconfig /all命令获取网卡名称。
  2. FOR /F "tokens=2*" %%i IN ('ipconfig/all^|find /i "Ethernet adapter "') DO set name=%%j
  3. ::用for命令删除网卡名称后面的冒号。
  4. FOR /F "tokens=1* delims=:" %%i in ("%name%") do set a=%%i
  5. netsh interface ip set address name="%a%" source=static addr=%slection1% mask=%Mask% gateway=%Gway% gwmetric=1 >nul 2>nul
复制代码

TOP

本帖最后由 beatfan 于 2015-5-15 17:28 编辑

笨一点的方法,要知道本地连接名称,如本地连接 2

netsh interface ipv4 set address "本地连接 2" static 192.168.10.1 255.255.255.0 192.168.10.1
::设置DNS服务器
netsh interface ipv4 set dnsservers "本地连接 2" static 192.168.10.253 primary  
::设置次要的DNS服务器地址
netsh interface ipv4 set dnsservers "本地连接 2" static 192.168.10.253   


::恢复自动获取ip
netsh interface ipv4 set address name="本地连接 2" source=dhcp  
netsh interface ipv4 set dns name="本地连接 2" source=dhcp
閑的時候多難過

TOP

返回列表