Oglas

promjena skripte mrežnih postavkiOvaj tjedan naišao sam na zanimljiv problem. U mnogim uredima ili radnim okruženjima možda ćete trebati redefinirati mrežne postavke da biste se povezali s različitim mrežama. Na primjer, neki uzimaju prijenosno računalo sa sobom i imaju statički IP postavljen baš za taj stroj. No, s obzirom da je radna mreža obično DHCP, osoba zahtijeva neprestano mijenjanje mrežnih postavki između statičkog IP-a ili automatskog DHCP-a, ovisno o tome gdje se nalaze.

Česti je problem inženjera ili IT osoblja koji se često moraju povezati s uređajima ili strojevima na maloj mreži unutar zgrade. Da biste se povezali s tom izdvojenom mrežom, morate promijeniti mrežne postavke u statički IP. Kasnije, kad se ponovno povežete s korporativnom mrežom, ponovno je na DHCP-u.

Dosta često sam se našao u ovoj situaciji i toliko se umorio od pregledavanja mrežne kartice, otvaranja IP postavki i radeći te izmjene, zaključio sam da je krajnje vrijeme da sastavim VB skriptu koja će sve to obaviti u jednom ili dva klikova. Ako ste pratili moje članke o programiranju, onda znate da volim VB skripte. Jednom sam to koristio

instagram viewer
stvoriti opsjednuto računalo Napravite jezivo posjedovanje računala sa skriptu za Windows za Noć vješticaPostoji puno zabavnih šala koje možete igrati s prijateljima s računalom. Vjerojatno ste vidjeli sve one jezive YouTube videozapise koje ljudi prosljeđuju jedni drugima za dobro uplašenje ... Čitaj više , i također navikao automatizirati Microsoft SyncToy Kako stvoriti alat za sigurnosnu kopiju podataka sa SyncToy i VB skriptuOvdje smo pokrili mnoštvo sigurnosnih rješenja na MUO-u, i sva su ta rješenja odlična, ali ako radite u okruženju koje je oprezno oko besplatnih softverskih paketa treće strane ili tvrtki ... Čitaj više za sigurnosno kopiranje podataka.

Ovaj je zadatak također moguće obavljati pomoću VB skripte, a čak je i moguće ga učiniti dovoljno fleksibilnim da može prihvatiti unos korisnika za statičku IP adresu. U ovom ću vam članku pokazati u tri dijela.

Izrada skripte za izmjenu mrežnih postavki

Tri su glavna zadatka koja trebate obaviti sa skriptu kako biste stvorili ovu malu aplikaciju za prebacivanje mrežnih postavki. Prvi je korištenje skripte za stvaranje statičkih IP postavki. Sljedeće je osmisliti skriptu koja će omogućiti DHCP. Na kraju, posljednje je pitati korisnika koji zadatak želi obaviti, a zatim iskoristiti tu povratnu informaciju kako bi je izvršio.

VB skripta za postavljanje statičkih IP postavki

Ne zaboravite da su sljedeće skripte potrebne za spremanje u obliku tekstualne datoteke s .wsf ekstenzijom da bi mogle raditi na Windows računalu. Sljedeća skripta promijenit će vaše mrežne postavke u statički IP s određenom maskom podmreže i zadanim gatewall-om, sa sva tri tvrdo kodirana u skriptu.

Za sve uzorke koda navedeni u ovom članku obavezno dodajte " na kraju se inače kôd neće pokrenuti.
Evo statične skripte za promjenu IP adrese:

Opcija eksplicitna Na pogrešci Nastavi Dalje dim objWMIService. Dim objNetAdapter. Dim strCompjuter. Dim arrIPAdresa. Dim arrSubnetMask. Dim arrGateway. Zatamnjeni colNetAdapters. Dim errEnableStatic. Dim errGateways strComputer = "." arrIPAddress = Niz ("192.168.1.106") arrSubnetMask = Array ("255.255.255.0") arrGateway = Array ("192.168.1.1") postavi objWMIService = GetObject ("winmgmts: \\" & strComputer & "\ root \ cimv2") Postavite colNetAdapters = objWMIService. ExecQuery ("Odaberite * iz Win32_NetworkAdapterConfiguration gdje je IPEnabled = TRUE") Za svaki objNetAdapter u colNetAdapters errEnableStatic = objNetAdapter. OmogućiStatic (arrIPAddress, arrSubnetMask) Ako nije errEnableStatic = 0 onda WScript. Odjek "Neuspjeh u dodjeljivanju IP / podmreže." Kraj If errGateways = objNetAdapter. SetGateways (arrGateway) Ako nije errGateways = 0 onda WScript. Odjek "Neuspjeh u dodjeljivanju Gatewaya." Kraj ako je Dalje. Wscript. Prestati

Ova skripta koristi Windows WMI uslugu u sustavu Windows kako bi ostvarila cilj promjene postavki. Možete vidjeti tri varijable fiksnog niza učitane s IP adresama, a zatim gdje skripta provjerava je li aktivna mrežna kartica "omogućena". Zatim koristi metode "EnableStatic" i "SetGateways" da izvrši potrebne promjene. Kada pokrenem skriptu na svojoj kućnoj mreži (gdje mi treba DHCP), možete vidjeti gdje je skripta uspješno promijenila moje postavke adaptera, a ja sam izgubio internetsku vezu.
Kako napisati skriptu za Windows da biste promijenili mrežne postavke na letu Fly autodhcp1
Nakon što je dokazao da statički-IP dio skripte funkcionira, vrijeme je da napišete skriptu koja će adapter prilagoditi DHCP-u tako da će automatski prepoznati mrežni IP. Evo skripte koju možete koristiti za to.

Opcija eksplicitna Na pogrešci Nastavi Dalje dim objWMIService. Dim objNetAdapter. Dim strCompjuter. Dim errEnable strComputer = "." Postavi objWMIService = GetObject ("winmgmts: \\" & strComputer & "\ root \ cimv2") Postavite colNetAdapters = objWMIService. ExecQuery ("Odaberite * iz Win32_NetworkAdapterConfiguration gdje je IPEnabled = TRUE") Za svaki objNetAdapter u colNetAdapters errEnable = objNetAdapter. EnableDHCP () Sljedeći WScript. Prestati

Kao što vidite, ova je skripta puno jednostavnija. Također koristi WMI, ali jedina potrebna funkcija je "OmogućiDHCP". To se izvodi na trenutno omogućenom mrežnom adapteru. Nakon spremanja i pokretanja ove skripte, postavke moje prilagodničke kartice promijenjene su na DHCP, a moja internetska veza ponovno je radila.
promjena skripte mrežnih postavki
Dakle, sada kada ste dobili kôd da obavite obje važne radnje, sljedeći dio ovog trika bit će preuzimanje podataka od korisnika kako bi odredio koji točno statički IP želi. Kako biste ponovo omogućili DHCP, možete zatražiti od korisnika da unese riječ „AUTO“ za automatsko otkrivanje IP adrese.
Evo kako izgleda ova nova, cjelovita skripta koja uključuje dvije gornje skripte.

Opcija eksplicitna Na pogrešci Nastavi Dalje dim objWMIService. Dim objNetAdapter. Dim strCompjuter. Dim arrIPAdresa. Dim arrSubnetMask. Dim arrGateway. Zatamnjeni colNetAdapters. Dim errEnableStatic. Dim errGateways. Dim strInput. Dim errFailed errFailed = 0 strInput = InputBox ("Unesite statičku IP adresu ili AUTO") Ako je strInput = "AUTO" tada strComputer = "." Postavi objWMIService = GetObject ("winmgmts: \\" & strComputer & "\ root \ cimv2") postavi colNetAdapters = objWMIService. ExecQuery ("Odaberite * iz Win32_NetworkAdapterConfiguration gdje je IPEnabled = TRUE") Za svaki objNetAdapter u colNetAdapters errEnable = objNetAdapter. OmogućiDHCP () Ako nije errEnable = 0, tada WScript. Odjek "Postavljanje DHCP nije uspjelo." errFailed = 1 Kraj ako je Sljedeće. Ostalo strComputer = "." arrIPAddress = Array (strInput) arrSubnetMask = Array ("255.255.255.0") arrGateway = Array ("192.168.1.1") postavi objWMIService = GetObject ("winmgmts: \\" & strComputer & "\ root \ cimv2") Postavi colNetAdapters = objWMIService. ExecQuery ("Odaberite * iz Win32_NetworkAdapterConfiguration gdje je IPEnabled = TRUE") Za svaki objNetAdapter u colNetAdapters errEnableStatic = objNetAdapter. OmogućiStatic (arrIPAddress, arrSubnetMask) Ako nije errEnableStatic = 0 onda WScript. Odjek "Neuspjeh u dodjeljivanju IP / podmreže." errFailed = 1 Kraj ako je errGateways = objNetAdapter. SetGateways (arrGateway) Ako nije errGateways = 0 onda WScript. Odjek "Neuspjeh u dodjeljivanju Gatewaya." errFailed = 1 kraj ako je sljedeći kraj ako je ako errFailed = 0 onda WScript. Odjek "IP postavke su uspješno izmijenjene." Zaustavi ako WScript. Prestati

Ova skripta koristi funkciju InputBox da bi od korisnika dobila ili statički IP ili naredbu "AUTO".
promjena skripte mrežnih postavki

Ako se u polje upiše ništa drugo osim „AUTO“, ono će se koristiti kao statički IP niz u odjeljku koda koji koristi WMI za postavljanje statičkih IP postavki mrežnog adaptera. Tu je i provjera potvrde "0", u kojoj piše da je sve u redu.

skriptu za promjenu mrežnih postavki

Provjeravajući postavke mrežne kartice nakon pokretanja skripte, potvrdio sam da je skripta u stvari promijenila statičku IP postavku.
skriptu za promjenu mrežnih postavki
Sada za testiranje AUTO skripte. Unosom AUTO zadovoljava se prvi uvjet u "IF" izjavi za provjeru AUTO. Ovo pokreće zamjensku skriptu koja omogućuje DHCP.

skriptu za promjenu mrežnih postavki

Nakon pokretanja ovog programa, ušao sam u svoje postavke adaptera i dovoljno je siguran da je vraćen na automatski dobivanje IP adrese.
skripta za promjenu mreže
Iako je možda dovoljno jednostavan zadatak ući u postavke mrežne kartice i promijeniti se na statički ili DHCP, ako to često morate raditi, to može postati prava bol. To možete učiniti iz naredbenog retka pomoću "netsh", ali opet, morate zapamtiti sintaksu naredbi.

Upotreba gornje skripte omogućuje vam izgradnju brzog i jednostavnog uslužnog programa koji možete u bilo kojem trenutku koristiti za izmjenu mrežnih postavki u hodu.

Mislite da biste mogli isprobati ovaj Windows Skripta? Imate li još ideja da ga prilagodite i učinite još boljim? Podijelite svoje misli i prijedloge u odjeljku s komentarima u nastavku.

Kreditna slika:Binarni kodovi preko Shutterstocka

Ryan je diplomirao elektrotehniku. Radio je 13 godina u inženjerstvu automatizacije, 5 godina u IT-u, a sada je Apps inženjer. Bivši glavni urednik MakeUseOfa, govorio je na nacionalnim konferencijama o vizualizaciji podataka i bio je prikazan na nacionalnoj televiziji i radiju.