Escrevendo um script para um laboratório de estudantes de várias redes para mudar de rede

0

Eu trabalho em uma universidade / faculdade e tenho um problema em um dos laboratórios.

No momento, temos alguns programas que extraem suas licenças de um servidor de licenças. Este servidor de licenças não tem conexão com a Internet para auxiliar na segurança e está conectado em rede a esses 16 ou mais computadores por meio de uma LAN com fio. Para acessar a Internet, instalamos cartões sem fio e conectamos todos a outro servidor que compartilhou recursos aos quais os alunos precisarão acessar periodicamente.

Agora, tive que configurá-lo com deepfreeze para que, quando eles fizerem logon, a WLAN esteja habilitada e a LAN desativada (como prioridade de acesso à Internet), mas se precisarem usar um dos três aplicativos, eles devem primeiro desative a placa sem fio, ative a conexão lan e inicie o programa após aguardar para obter um endereço IP para a rede de licença. Eles então terão que reverter o processo assim que o programa for carregado, para que possam continuar usando a Internet.

A minha pergunta é, existe algum tipo de script que eu possa escrever para, pelo menos, automatizar este processo? Estava pensando em talvez ter 3 atalhos na área de trabalho para os programas que eram, de fato, scripts que fizeram as mudanças na rede, executaram o programa e depois, depois de esperar 30 segundos, reverteram as mudanças na rede.

Se alguém tiver algum conselho que possa me apontar na direção certa, eu aprecio isso.

Felicidades,

adam

    
por Adam Shearman 14.01.2015 / 01:22

1 resposta

1

Basta usar o Powershell e os Cmdlets do Adaptador de Rede. Com esses você pode facilmente alterar as configurações, ativar e desativar os adaptadores.

link

Editar: Esqueceu que é o PowerShell v4. Eu usaria objetos WMI apenas para ficar mais seguro se você tiver vários sistemas operacionais, etc.

$Ethernet = Get-WmiObject -Class Win32_NetworkAdapter -Filter "Name = '$EthernetAdapterName'"
$Ethernet.Disable()
$Wireless = Get-WmiObject -Class Win32_NetworkAdapter -Filter "Name = '$WirelessAdapterName'"
$Wireless.Enable()
Start-Sleep 30
$Wireless.Disable()
$Ethernet.Enable()
    
por 14.01.2015 / 01:29