为一个以太网控制器保留多个 IP 地址设置(Windows 7)

为一个以太网控制器保留多个 IP 地址设置(Windows 7)

我有一台笔记本电脑,经常在两个地方访问互联网:

  • 对于一个地方,我需要自动获取 IP 地址
  • 但对于其他地方,应该使用静态 IP 地址和 DNS 服务器。

问题是,当您选择“自动获取 IP 地址”时,Windows 7 不会保留设置,因此每次切换到静态分配的 IP 地址时,我都必须填写相同的设置。

我可以通过几次点击或命令来切换 IP 地址设置,但每次都必须填写所有详细信息,这似乎很烦人。

是否有我可以使用的内置功能或任何第三方解决方案?

答案1

我可以帮忙!=) 这是我经常运行的 bat 文件代码。告诉我你想要什么,我可以自定义 netsh 部分 =)

这是仅适用于 Windows 的解决方案,只需要您将代码复制粘贴到 txt 文件中,并将“.txt”部分(必须在视图中启用显示扩展名)更改为“.bat”

@echo off
REM <-- Old way of commenting "REM"

REM Here we get admin privileges
:: BatchGotAdmin
:-------------------------------------
REM  --> Check for permissions
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"

REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
    echo Requesting administrative privileges...
    goto UACPrompt
) else ( goto gotAdmin )

:UACPrompt
    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
    set params = %*:"=""
    echo UAC.ShellExecute "cmd.exe", "/c %~s0 %params%", "", "runas", 1 >> "%temp%\getadmin.vbs"

    "%temp%\getadmin.vbs"
    del "%temp%\getadmin.vbs"
    exit /B

:gotAdmin
    pushd "%CD%"
    CD /D "%~dp0"
:--------------------------------------

REM Here we set all the interfaces
REM Run ipconfig in cmd to get your interface names =)

REM here we set DNS
netsh interface show interface
netsh interface ipv4 add dnsserver "Ethernet" address=8.8.8.8 index=1
netsh interface ipv4 add dnsserver "Local Area Connection* 4" address=8.8.8.8 index=1
netsh interface ipv4 add dnsserver "Ethernet" address=8.8.4.4 index=2
netsh interface ipv4 add dnsserver "Local Area Connection* 4" address=8.8.4.4 index=2


pause

相关内容