реклама

промяна на скрипта на мрежовите настройкиТази седмица се натъкнах на интересен проблем. В много офиси или работни среди може да се наложи да предефинирате мрежовите си настройки, за да се свържете с различни мрежи. Например, някои хора си вземат лаптопа вкъщи със себе си и имат статичен IP адрес, създаден специално за тази машина. Въпреки това, тъй като работната мрежа обикновено е DHCP, това изисква човек да продължи да променя мрежовите настройки между статичен IP или автоматичен DHCP, в зависимост от това къде се намират.

По-често срещан проблем е за инженерите или ИТ персонала, които често се нуждаят от свързване към устройства или машини в малка мрежа в сградата. За да се свържете с тази изолирана мрежа, трябва да промените мрежовите си настройки на статичен IP. По-късно, когато се свържете отново с корпоративната мрежа, отново се връща към DHCP.

Попаднах в тази ситуация достатъчно често и се уморих да разглеждам мрежовата карта, отваряйки IP настройките и като направих тези редакции, реших, че е крайно време да съставя VB скрипт, който ще свърши всичко в една или две кликвания. Ако сте следвали моите статии за програмиране, тогава знаете, че обичам VB скриптове. Веднъж го използвах

instagram viewer
създайте обладан компютър Създайте страховит компютър с Windows скрипт за ХелоуинИма много забавни шеги, които можете да играете на приятелите си с компютър. Вероятно сте виждали всички онези страховити видеоклипове в YouTube, които хората препращат един на друг за добро плашене ... Прочетете още , и също така свикна автоматизира Microsoft SyncToy Как да създадете инструмент за архивиране на данни с SyncToy & VB ScriptТук сме обхванали много резервни решения в MUO и всички тези решения са страхотни, но ако работите в среда, която е предпазлива за безплатни софтуерни пакети на трети страни или компании ... Прочетете още за архивиране на данни.

Възможно е също да се изпълни тази задача с VB скрипт, като дори е възможно да се направи достатъчно гъвкава, така че да може да приема потребителски вход за статичния IP адрес. В тази статия ще ви покажа как да го направите в три раздела.

Създаване на скрипт за промяна на мрежова настройка

Има три основни задачи, които трябва да изпълните със скрипта, за да създадете това малко приложение за превключване на мрежовите настройки. Първата е да използвате скрипта за създаване на статични IP настройки. Следващото е да излезе със скрипт, който да активира DHCP. И накрая, последното е да попитате потребителя коя задача иска да извърши и след това да използва тази обратна връзка, за да я изпълни.

VB скрипт за задаване на статични IP настройки

Не забравяйте, че следните скриптове трябва да бъдат запазени като текстов файл с разширение .wsf, за да работят на компютър с Windows. Следващият скрипт ще промени вашите мрежови настройки на статичен IP с конкретна маска на подмрежата и шлюз по подразбиране, като и трите твърди са кодирани в скрипта.

За всички проби от код, изброени в тази статия, не забравяйте да добавите „ в крайна сметка, в противен случай кодът няма да се стартира.
Ето статичния скрипт за промяна на IP адрес:

Опция изрична при грешка Възобновяване Следваща dim objWMIService. Dim objNetAdapter. Dim strComputer. Размерен arrIP адрес. Dim arrSubnetMask. Dim arrGateway. Dim colNetAdapters. Dim errEnableStatic. Dim errGateways strComputer = "." arrIPAddress = Array ("192.168.1.106") arrSubnetMask = Array ("255.255.255.0") arrGateway = Array ("192.168.1.1") Задайте objWMIService = GetObject ("winmgmts: \\" & strComputer & "\ root \ cimv2") Задайте colNetAdapters = objWMIService. ExecQuery ("Изберете * от Win32_NetworkAdapterConfiguration където IPEnabled = TRUE") За всеки objNetAdapter в colNetAdapters errEnableStatic = objNetAdapter. EnableStatic (arrIPAddress, arrSubnetMask) Ако не е errEnableStatic = 0, тогава WScript. Отзвук "Неуспешно присвояване на IP / подмрежа." Край Ако errGateways = objNetAdapter. SetGateways (arrGateway) Ако не errGateways = 0, тогава WScript. Отзвук "Провал при приписване на шлюз." Край, ако Напред. WScript. напускам

Този скрипт използва услугата Windows WMI в Windows, за да постигне целта за промяна на настройките. Можете да видите трите променливи с фиксиран масив, заредени с IP адреси, и след това скриптът проверява за активната „активирана“ мрежова карта. След това използва методите „EnableStatic“ и „SetGateways“, за да направи тези необходими промени. Когато пускам скрипта в домашната си мрежа (където ми е нужен DHCP), можете да видите къде скриптът успешно промени настройките ми на адаптера и загубих интернет връзката си.
Как да напишете скрипт на Windows за промяна на мрежовите настройки на Fly autodhcp1
След като доказа, че статичната IP част на скрипта работи, е време да напишете скрипта, който ще настрои адаптера на DHCP, така че автоматично ще открие мрежовия IP. Ето сценария, който можете да използвате за това.

Опция изрична при грешка Възобновяване Следваща dim objWMIService. Dim objNetAdapter. Dim strComputer. Dim errEnable strComputer = "." Задайте objWMIService = GetObject ("winmgmts: \\" & strComputer & "\ root \ cimv2") Задайте colNetAdapters = objWMIService. ExecQuery ("Изберете * от Win32_NetworkAdapterConfiguration където IPEnabled = TRUE") За всеки objNetAdapter в colNetAdapters errEnable = objNetAdapter. EnableDHCP () Следващ WScript. напускам

Както можете да видите, този скрипт е много по-опростен. Той също използва WMI, но единствената необходима функция е „EnableDHCP“. Това се извършва на текущо активирания мрежов адаптер. След запазването и стартирането на този скрипт, настройките на адаптерната ми карта се промениха обратно на DHCP и интернет връзката ми отново работи.
промяна на скрипта на мрежовите настройки
И така, сега, когато имате кода да извършите и двете важни действия, следващата част от този трик ще бъде да вземете информация от потребителя, за да определи точно какъв статичен IP иска. За да активирате отново DHCP, можете да изискате от потребителя да въведе думата „AUTO“ за автоматично откриване на IP.
Ето как изглежда този нов, пълен скрипт, включващ двата скрипта по-горе.

Опция изрична при грешка Възобновяване Следваща dim objWMIService. Dim objNetAdapter. Dim strComputer. Размерен arrIP адрес. Dim arrSubnetMask. Dim arrGateway. Dim colNetAdapters. Dim errEnableStatic. Dim errGateways. Dim strInput. Dim errFailed errFailed = 0 strInput = InputBox ("Въведете статичен IP адрес или AUTO") Ако strInput = "AUTO" тогава strComputer = "." Задайте objWMIService = GetObject ("winmgmts: \\" & strComputer & "\ root \ cimv2") Задайте colNetAdapters = objWMIService. ExecQuery ("Изберете * от Win32_NetworkAdapterConfiguration където IPEnabled = TRUE") За всеки objNetAdapter в colNetAdapters errEnable = objNetAdapter. EnableDHCP () Ако не е errEnable = 0, тогава WScript. Ехо "Настройката на DHCP не бе успешна." errFailed = 1 Край, ако Напред. Остана strComputer = "." arrIPAddress = Array (strInput) arrSubnetMask = Array ("255.255.255.0") arrGateway = Array ("192.168.1.1") Задайте objWMIService = GetObject ("winmgmts: \\" & strComputer & "\ root \ cimv2") Задайте colNetAdapters = objWMIService. ExecQuery ("Изберете * от Win32_NetworkAdapterConfiguration където IPEnabled = TRUE") За всеки objNetAdapter в colNetAdapters errEnableStatic = objNetAdapter. EnableStatic (arrIPAddress, arrSubnetMask) Ако не е errEnableStatic = 0, тогава WScript. Отзвук "Неуспешно присвояване на IP / подмрежа." errFailed = 1 край Ако errGateways = objNetAdapter. SetGateways (arrGateway) Ако не errGateways = 0, тогава WScript. Отзвук "Провал при приписване на шлюз." errFailed = 1 Край Ако Next End Ако If errFailed = 0 Тогава WScript. Отзвук "IP настройки успешно променени." Край, ако WScript. напускам

Този скрипт използва функцията InputBox, за да получи или статичния IP, или командата „AUTO“ от потребителя.
промяна на скрипта на мрежовите настройки

Ако в полето е въведено нещо различно от „AUTO“, това ще бъде използвано като статичен IP низ в секцията на кода, която използва WMI за задаване на статичните IP настройки за мрежовия адаптер. Има и проверка за потвърждение „0“, според която всичко е наред.

скрипт за промяна на мрежовите настройки

Проверих настройките на мрежовата си карта след стартиране на скрипта, потвърдих, че всъщност скриптът промени статичните IP настройки.
скрипт за промяна на мрежовите настройки
Сега за тестване на AUTO скрипта. Въвеждането на AUTO отговаря на първото условие в оператора “IF”, проверяващ за AUTO. Това стартира алтернативния скрипт, който позволява DHCP.

скрипт за промяна на мрежовите настройки

След като стартирах това, влязох в настройките на адаптера си и достатъчно сигурен, той беше зададен обратно на получаване на IP адрес автоматично.
скрипт за промяна на мрежата
Въпреки че може да е достатъчно проста задача да влезете в настройките на вашата мрежова карта и да се промените на статични или DHCP, ако трябва да го правите наистина често, това може да се превърне в истинска болка. Можете да го направите от команден ред, използвайки „netsh“, но отново, трябва да запомните синтаксиса на командите.

Използването на скрипта по-горе ви позволява да изградите бърза и лесна полезна програма, която можете да използвате по всяко време, за да превключвате мрежовите си настройки в движение.

Мислите ли, че може да опитате този скрипт на Windows? Някакви други идеи да го ощипвам и да го направим още по-добър? Споделете своите мисли и предложения в секцията за коментари по-долу.

Кредит за изображение:Двоични кодове чрез Shutterstock

Райън има бакалавърска степен по електротехника. Работил е 13 години в автоматизацията, 5 години е в ИТ, а сега е инженер на приложения. Бивш управляващ редактор на MakeUseOf, той говори на национални конференции за визуализация на данни и е участвал в националната телевизия и радио.