OS: entreprise Vista
Lorsque je bascule entre mon réseau domestique et celui de mon entreprise, je dois toujours faire face à des problèmes pour me connecter au réseau. Presque toujours, je dois utiliser le service de diagnostic dans "Réseau et centre de partage" et le problème est résolu lorsque j'utilise l'option de réinitialisation de la carte réseau.
Cela prend beaucoup de temps (3-4 min) et j’essayais donc de trouver une commande ou un script/cmdlet powershell que je peux utiliser directement pour réinitialiser l’adaptateur réseau et me faire gagner ces 5 minutes à chaque fois que je dois permuter. entre les réseaux. Des pointeurs?
Pour ce faire, vous pouvez utiliser WMI à partir de PowerShell. En supposant qu'il existe un adaptateur réseau dont le nom de périphérique contient Wireless , la série de commandes peut ressembler à ceci:
$adaptor = Get-WmiObject -Class Win32_NetworkAdapter | Where-Object {$_.Name -like "*Wireless*"}
$adaptor.Disable()
$adaptor.Enable()
N'oubliez pas que si vous utilisez Windows Vista, vous devrez peut-être exécuter PowerShell en tant qu'administrateur .
La réponse de Zitrax:
netsh interface set interface "InterfaceName" DISABLED
netsh interface set interface "InterfaceName" ENABLED
était 99% de ce que je cherchais. L'information qu'il a laissée de côté, cependant, était que ces commandes devaient être exécutées en tant qu'administrateur. Exécutez cmd.exe en tant qu'administrateur et saisissez-les, ou stockez-les dans un fichier de commandes, puis exécutez ce fichier en tant qu'administrateur en cliquant dessus avec la souris et en choisissant "Exécuter en tant qu'administrateur" dans le menu contextuel.
Vous pouvez également essayer ceci dans un fichier .BAT ou .CMD:
ipconfig /release
ipconfig /renew
arp -d *
nbtstat -R
nbtstat -RR
ipconfig /flushdns
ipconfig /registerdns
Ces commandes devraient faire la même chose que "Diagnostiquer et réparer" pour la carte réseau, mais est beaucoup plus rapide!
Faites-moi savoir si cela aide! JFV
Voir cet article de The Scripting Guys, "Comment puis-je activer ou désactiver mon adaptateur réseau?"
tl/dr:
Restart-NetAdapter -Name "Your Name Here"
Vous pouvez obtenir la liste en utilisant
Get-NetAdapter
La commande suivante a fonctionné pour moi (sur Server 2012 R2):
Restart-NetAdapter -Name "Ethernet 2"
Remplacez "Ethernet 2" par le nom de votre adaptateur.
Remarque: pour créer un script PS: créez un nouveau document dans le Bloc-notes, enregistrez sous le nom script.PS1
, insérez la ligne ci-dessus et enregistrez. Cliquez avec le bouton droit sur le fichier -> Exécuter avec PowerShell.
Pour plus voir cet article technet .
Ce qui a fonctionné pour moi:
netsh interface show interface
pour afficher le nom de l'interface qui était pour moi "Ethernet 2" puis:
netsh interface set interface "Ethernet 2" DISABLED
netsh interface set interface "Ethernet 2" ENABLED
Le poste de Scott m'a inspiré pour écrire une très petite application console C #/.Net, qui utilise System.Management. Vous pouvez nommer l'adaptateur que vous souhaitez redémarrer en tant que paramètre de ligne de commande. Le code présente quelques notions de base sur la gestion des périphériques, qui pourraient également s'avérer utiles.
using System;
using System.Management;
namespace ResetNetworkAdapter
{
class Program
{
static void Main(string[] args)
{
if (args.Length != 1)
{
Console.WriteLine("ResetNetworkAdapter [adapter name]");
Console.WriteLine("disables and re-enables (restarts) network adapters containing [adapter name] in their name");
return;
}
// commandline parameter is a string to be contained in the searched network adapter name
string AdapterNameLike = args[0];
// get network adapter node
SelectQuery query = new SelectQuery("Win32_NetworkAdapter");
ManagementObjectSearcher searcher = new ManagementObjectSearcher(query);
ManagementObjectCollection adapters = searcher.Get();
// enumerate all network adapters
foreach (ManagementObject adapter in adapters)
{
// find the matching adapter
string Name = (string)adapter.Properties["Name"].Value;
if (Name.ToLower().Contains(AdapterNameLike.ToLower()))
{
// disable and re-enable the adapter
adapter.InvokeMethod("Disable", null);
adapter.InvokeMethod("Enable", null);
}
}
}
}
}
Cliquez ici pour en savoir plus sur PowerShell version 5.0.10586.122 Windows 10 Home. То должно быть запущено от имени администратора:
Restart-NetAdapter -Name "ethernet"
Тобы запустить то как администратор без необходимости "выключать UAC" или "R-Click-> Запуск от имени администратора ": (то одноразовое задание)
Restart-NetAdapter -Name "ethernet"
в файл .ps1
.ps1
> Создать ярлык)Теперь каждый раз, когда вы запускаете ярлык, вам нужно будет просто нажать "Да" на экране UAC, и он будет сбрасывать адаптер, указанный в файле .ps1
.
Cliquez ici pour en savoir plus sur PowerShell (WiFi, réseau local et réseau local):
Get-NetAdapter
Vous pouvez également redémarrer un NIC en utilisant la commande wmic:
Obtenir l'ID d'interface:
C:\>wmic nic get name, index
Désactiver NIC (ID d'interface: 1):
wmic path win32_networkadapter where index=1 call disable
Activer NIC (ID d'interface: 1):
wmic path win32_networkadapter where index=1 call enable
Source: http://www.sysadmit.com/2016/04/windows-reiniciar-red.html
Vous pouvez également utiliser l'utilitaire Microsoft devcon.exe .
Tout d’abord, lancez devcon listclass net
pour trouver votre ID de périphérique.
Utilisez ensuite cet ID de périphérique dans cette commande: devcon restart PCI\VEN_16*
(utilisez le caractère générique '*'
pour éviter de devoir saisir la chaîne d'ID complète).
Merci pour l'info que cela peut être fait avec netsh . J'ai écrit un simple script "Repair.bat":
@echo off
netsh interface set interface "%1" DISABLED
netsh interface set interface "%1" ENABLED
Appelez-le simplement avec le nom de la carte réseau, renommée c.-à-d. "WLAN" afin que je ne dispose pas d'espaces, tapez "Réparer le réseau local sans fil" dans cmd fait l'affaire ..__Je le placerai dans system32 et en effectuerai une tâche ou voyez comment l'intégrer au menu contextuel du réseau ...
ipconfig/flushdns
ipconfig/renew
Sont les 2 cmdlets que j'utilise pour actualiser ma connexion. Vous n'avez pas nécessairement besoin d'allumer et d'éteindre le routeur pour rétablir un signal puissant (je sais que le cycle d'alimentation efface la mémoire du routeur, mais c'est vraiment ça).
Vous pouvez également essayer les commandes netsh
. Exemple:
netsh wlan disconnect && netsh wlan connect [ONE OF YOUR WLAN PROFILES]
Vous pouvez obtenir une liste de ces "profils" en utilisant:
netsh wlan show profiles