Διαφήμιση

αλλαγή σεναρίου ρυθμίσεων δικτύουΑυτή την εβδομάδα, βρήκα ένα ενδιαφέρον πρόβλημα. Σε πολλά γραφεία ή περιβάλλοντα εργασίας, ίσως χρειαστεί να επαναπροσδιορίσετε τις ρυθμίσεις δικτύου σας για να συνδεθείτε σε διαφορετικά δίκτυα. Για παράδειγμα, μερικοί άνθρωποι παίρνουν το φορητό τους σπίτι μαζί τους και έχουν ρυθμίσει μια στατική IP ειδικά για αυτό το μηχάνημα. Ωστόσο, δεδομένου ότι το δίκτυο εργασίας είναι συνήθως DHCP, αυτό απαιτεί από το άτομο να συνεχίζει να αλλάζει τις ρυθμίσεις δικτύου μεταξύ στατικής IP ή αυτόματου DHCP ανάλογα με το πού βρίσκεται.

Ένα πιο συνηθισμένο πρόβλημα είναι για τους μηχανικούς ή το προσωπικό πληροφορικής που συχνά χρειάζεται να συνδεθούν με συσκευές ή μηχανήματα σε ένα μικρό δίκτυο εντός ενός κτιρίου. Για να συνδεθείτε σε αυτό το απομονωμένο δίκτυο, πρέπει να αλλάξετε τις ρυθμίσεις δικτύου σε στατική IP. Αργότερα, όταν επανασυνδεθείτε στο εταιρικό δίκτυο, επιστρέφει ξανά στο DHCP.

Βρέθηκα σε αυτήν την κατάσταση αρκετά συχνά και κουράστηκα να περιηγηθώ στην κάρτα δικτύου, ανοίγοντας τις ρυθμίσεις IP και κάνοντας αυτές τις αλλαγές, αποφάσισα ότι ήρθε η ώρα να συνθέσω ένα σενάριο VB που θα τα έκανε όλα σε ένα ή δύο κλικ. Αν έχετε ακολουθήσει τα άρθρα προγραμματισμού μου, τότε ξέρετε ότι μου αρέσουν τα σενάρια VB. Κάποτε το χρησιμοποιούσα

δημιουργήστε έναν κατεχόμενο υπολογιστή Δημιουργήστε έναν υπολογιστή που διαθέτει Freaky με σενάριο Windows για τις ΑπόκριεςΥπάρχουν πολλές διασκεδαστικές φάρσες που μπορείτε να παίξετε στους φίλους σας με έναν υπολογιστή. Πιθανότατα έχετε δει όλα αυτά τα ανατριχιαστικά βίντεο στο YouTube που οι άνθρωποι ανταλλάσσουν ο ένας τον άλλον για καλό ... Διαβάστε περισσότερα , και συνήθιζε επίσης αυτοματοποιήστε το Microsoft SyncToy Πώς να δημιουργήσετε ένα εργαλείο δημιουργίας αντιγράφων ασφαλείας δεδομένων με SyncToy & VB ScriptΈχουμε καλύψει πολλές εφεδρικές λύσεις εδώ στο MUO και όλες αυτές οι λύσεις είναι εξαιρετικές, αλλά αν εργάζεστε σε ένα περιβάλλον που είναι επιφυλακτικό για τα δωρεάν πακέτα λογισμικού τρίτων ή εταιρείες ... Διαβάστε περισσότερα για αντίγραφα ασφαλείας δεδομένων.

Είναι επίσης δυνατό να ολοκληρώσετε αυτήν την εργασία με σενάριο VB και είναι ακόμη δυνατό να το κάνετε αρκετά ευέλικτο ώστε να μπορεί να δεχτεί είσοδο χρήστη για τη στατική διεύθυνση IP. Σε αυτό το άρθρο, θα σας δείξω πώς να το κάνετε σε τρεις ενότητες.

Δημιουργία δέσμης ενεργειών αλλαγής ρύθμισης δικτύου

Υπάρχουν τρεις κύριες εργασίες που πρέπει να ολοκληρώσετε με το σενάριο για να δημιουργήσετε αυτήν τη μικρή εφαρμογή για εναλλαγή ρυθμίσεων δικτύου. Το πρώτο είναι να χρησιμοποιήσετε το σενάριο για να δημιουργήσετε στατικές ρυθμίσεις IP. Το επόμενο είναι να βρείτε ένα σενάριο για να ενεργοποιήσετε το DHCP. Τέλος, το τελευταίο είναι να ρωτήσετε τον χρήστη ποια εργασία θέλει να κάνει και, στη συνέχεια, χρησιμοποιήστε αυτά τα σχόλια για να το ολοκληρώσετε.

VB Script για ορισμό στατικών IP ρυθμίσεων

Θυμηθείτε, τα ακόλουθα σενάρια πρέπει να αποθηκευτούν ως αρχείο κειμένου με επέκταση .wsf για να λειτουργούν σε υπολογιστή με Windows. Το ακόλουθο σενάριο θα αλλάξει τις ρυθμίσεις του δικτύου σας σε στατική IP με μια συγκεκριμένη μάσκα υποδικτύου και προεπιλεγμένη πύλη, με τα τρία σκληρά κωδικοποιημένα στο σενάριο.

Για όλα τα δείγματα κώδικα που αναφέρονται σε αυτό το άρθρο, φροντίστε να προσθέσετε " στο τέλος, διαφορετικά ο κώδικας δεν θα εκτελεστεί.
Ακολουθεί το στατικό σενάριο αλλαγής IP:

Option Explicit On Error Συνέχιση Next Dim objWMIService. Dim objNetAdapter. Dim strComputer. Dim arrIP Διεύθυνση. Dim arrSubnetMask. Dim arrGateway. Dim colNetAdapters. Dim errEnableStatic. Dim errGateways strComputer = "." arrIPAddress = Array ("192.168.1.106") arrSubnetMask = Διάταξη ("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) If Not errEnableStatic = 0 Στη συνέχεια WScript. Ηχώ "Αποτυχία εκχώρησης IP / Υποδικτύου." Τερματισμός Εάν errGateways = objNetAdapter. SetGateways (arrGateway) Εάν όχι errGateways = 0 Στη συνέχεια WScript. Echo "Αποτυχία ανάθεσης Gateway." Τερματισμός Εάν Επόμενο. Σενάριο. Εγκαταλείπω

Αυτό το σενάριο χρησιμοποιεί την υπηρεσία Windows WMI στα Windows για την επίτευξη του στόχου της αλλαγής ρυθμίσεων. Μπορείτε να δείτε τις τρεις μεταβλητές σταθερού πίνακα που είναι φορτωμένες με τις διευθύνσεις IP και, στη συνέχεια, όπου το σενάριο ελέγχει για την ενεργή "ενεργοποιημένη" κάρτα δικτύου. Στη συνέχεια, χρησιμοποιεί τις μεθόδους "EnableStatic" και "SetGateways" για να κάνει αυτές τις απαιτούμενες αλλαγές. Όταν εκτελώ το σενάριο στο οικιακό μου δίκτυο (όπου χρειάζομαι DHCP), μπορείτε να δείτε πού το σενάριο άλλαξε με επιτυχία τις ρυθμίσεις του προσαρμογέα μου και έχω χάσει τη σύνδεσή μου στο Διαδίκτυο.
Πώς να γράψετε ένα σενάριο των Windows για να αλλάξετε τις ρυθμίσεις δικτύου στο Fly autodhcp1
Έχοντας αποδείξει ότι το τμήμα στατικής-IP του σεναρίου λειτουργεί, ήρθε η ώρα να γράψετε το σενάριο που θα ρυθμίσει τον προσαρμογέα σε DHCP, ώστε να εντοπίσει αυτόματα την IP δικτύου. Εδώ είναι το σενάριο που μπορείτε να χρησιμοποιήσετε για να το κάνετε αυτό.

Option Explicit On Error Συνέχιση Next 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. ΕνεργοποίησηDHCP () Επόμενο WScript. Εγκαταλείπω

Όπως μπορείτε να δείτε, αυτό το σενάριο είναι πολύ πιο απλό. Χρησιμοποιεί επίσης WMI, αλλά η μόνη απαιτούμενη λειτουργία είναι "EnableDHCP". Αυτό εκτελείται στον τρέχοντα ενεργοποιημένο προσαρμογέα δικτύου. Μετά την αποθήκευση και εκτέλεση αυτού του σεναρίου, οι ρυθμίσεις της κάρτας του προσαρμογέα άλλαξαν ξανά σε DHCP και η σύνδεσή μου στο Διαδίκτυο λειτούργησε ξανά.
αλλαγή σεναρίου ρυθμίσεων δικτύου
Έτσι, τώρα που έχετε τον κώδικα για να εκτελέσετε και τις δύο σημαντικές ενέργειες, το επόμενο μέρος αυτού του κόλπου θα είναι να λάβετε πληροφορίες από τον χρήστη για να προσδιορίσετε ακριβώς ποια στατική IP θέλει. Για να ενεργοποιήσετε ξανά το DHCP, μπορείτε να ζητήσετε από τον χρήστη να εισαγάγει τη λέξη "AUTO" για να εντοπίσει αυτόματα την IP.
Δείτε πώς μοιάζει αυτό το νέο, πλήρες σενάριο που ενσωματώνει τα παραπάνω δύο σενάρια.

Option Explicit On Error Συνέχιση Next Dim objWMIService. Dim objNetAdapter. Dim strComputer. Dim arrIP Διεύθυνση. Dim arrSubnetMask. Dim arrGateway. Dim colNetAdapters. Dim errEnableStatic. Δυστυχώς οι πύλες. Dim strInput. Dim errFailed errFailed = 0 strInput = InputBox ("Type Static IP Address or AUTO") Εάν strInput = "AUTO" τότε strComputer = "." Ορισμός objWMIService = GetObject ("winmgmts: \\" & strComputer & "\ root \ cimv2") Ορισμός colNetAdapters = objWMIService. ExecQuery ("Επιλέξτε * από Win32_NetworkAdapterConfiguration όπου IPEnabled = TRUE") Για κάθε objNetAdapter στο colNetAdapters errEnable = objNetAdapter. EnableDHCP () If Not errEnable = 0 Τότε WScript. Echo "Η ρύθμιση 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) If Not errEnableStatic = 0 Στη συνέχεια WScript. Ηχώ "Αποτυχία εκχώρησης IP / Υποδικτύου." errFailed = 1 Τέλος Εάν errGateways = objNetAdapter. SetGateways (arrGateway) Εάν όχι errGateways = 0 Στη συνέχεια WScript. Echo "Αποτυχία ανάθεσης Gateway." errFailed = 1 End αν Next End If If errFailed = 0 Τότε WScript. Echo "Οι ρυθμίσεις IP τροποποιήθηκαν επιτυχώς." Τερματισμός εάν WScript. Εγκαταλείπω

Αυτό το σενάριο χρησιμοποιεί τη συνάρτηση InputBox για να λάβει είτε τη στατική IP είτε την εντολή "AUTO" από τον χρήστη.
αλλαγή σεναρίου ρυθμίσεων δικτύου

Εάν πληκτρολογηθεί κάτι άλλο εκτός από το "AUTO" στο πεδίο, αυτό θα χρησιμοποιηθεί ως στατική συμβολοσειρά IP στην ενότητα κώδικα που χρησιμοποιεί WMI για να ορίσει τις στατικές ρυθμίσεις IP για τον προσαρμογέα δικτύου. Υπάρχει επίσης μια επιταγή για την επιβεβαίωση "0" που λέει ότι όλα πήγαν καλά.

script για να αλλάξετε τις ρυθμίσεις δικτύου

Ελέγχοντας τις ρυθμίσεις της κάρτας δικτύου μου μετά την εκτέλεση του σεναρίου, επιβεβαίωσα ότι το σενάριο έκανε στην πραγματικότητα τη στατική ρύθμιση IP.
script για να αλλάξετε τις ρυθμίσεις δικτύου
Τώρα για να δοκιμάσετε το σενάριο AUTO. Η πληκτρολόγηση AUTO πληροί την πρώτη προϋπόθεση στη δήλωση "IF" που ελέγχει το AUTO. Αυτό εκτελεί το εναλλακτικό σενάριο που επιτρέπει το DHCP.

script για να αλλάξετε τις ρυθμίσεις δικτύου

Μετά την εκτέλεση αυτού, μπήκα στις ρυθμίσεις του προσαρμογέα και σίγουρα, ρυθμίστηκε ξανά για να λάβω μια διεύθυνση IP αυτόματα.
σενάριο για αλλαγή δικτύου
Ενώ μπορεί να είναι αρκετά απλό έργο να μεταβείτε στις ρυθμίσεις της κάρτας δικτύου σας και να αλλάξετε σε στατικό ή DHCP, αν πρέπει να το κάνετε πολύ συχνά μπορεί να γίνει πραγματικός πόνος. Θα μπορούσατε να το κάνετε από μια γραμμή εντολών χρησιμοποιώντας το "netsh", αλλά και πάλι, πρέπει να θυμάστε τη σύνταξη εντολών.

Η χρήση του παραπάνω σεναρίου σάς επιτρέπει να δημιουργήσετε ένα γρήγορο και εύκολο βοηθητικό πρόγραμμα που μπορείτε να χρησιμοποιήσετε ανά πάσα στιγμή για να αλλάξετε τις ρυθμίσεις του δικτύου σας γρήγορα.

Πιστεύετε ότι μπορείτε να δοκιμάσετε αυτό το σενάριο των Windows; Οποιεσδήποτε άλλες ιδέες για να το τροποποιήσετε και να το κάνετε ακόμα καλύτερο; Μοιραστείτε τις σκέψεις και τις προτάσεις σας στην παρακάτω ενότητα σχολίων.

Πιστωτική εικόνα:Δυαδικοί κωδικοί μέσω του Shutterstock

Ο Ryan έχει πτυχίο Ηλεκτρολόγου Μηχανικού. Εργάστηκε 13 χρόνια στη μηχανική αυτοματισμού, 5 χρόνια στον τομέα της πληροφορικής και τώρα είναι Μηχανικός εφαρμογών. Πρώην διευθύνων σύμβουλος του MakeUseOf, μίλησε σε εθνικά συνέδρια για την οπτικοποίηση δεδομένων και έχει εμφανιστεί στην εθνική τηλεόραση και ραδιόφωνο.