Essa é criação minha... mas provavelmente alguém já deve ter feito: como enviar um pacote UDP na rede usando apenas uma linha no Windows Powershell.
Ingredientes utilizados:
- Link: http://msdn.microsoft.com/msdnmag/issues/06/02/udp/default.aspx
- Object Browser do Visual Studio (para ver a referência das classes usadas)
- Ethereal - Network Protocol Analyzer (para ver que o pacote realmente foi)
- Um editor de textos pra ir salvando à medida que as coisas forem funcionando (nesse caso, usei o gVim)
- Windows Powershell (óbvio!)
- Uma pitada de paciência (3 minutos só, não exagere)
Resultado:
(new-object System.Net.Sockets.Socket(2,2,17)).SendTo("Vinicius".toCharArray(),(new-object System.Net.IPEndPoint(([System.Net.IPAddress]::Parse("192.168.1.2")),2000)))
Dois detalhes: o exemplo acima manda um pacote com 8 bytes (os bytes da String "Vinicius") para o IP 192.168.1.2 na porta 2000.
Agora vou dormir. Amanhã posto algo mais decente que usa isso... como por exemplo uma possível função chamada Wake-computer que recebe um MAC Address. Ela vai acordar o computador, desde que ele esteja com fonte de energia, com a opção WakeOnLan na BIOS ativada e na rede local.
Boa noite!
Escrito por
Vinicius Canto
em 00:59.
(1 comentários).
Link permanente.
Categorias dessa postagem:
network,
powershell,
wakeonlan
Comentários
Postar um comentário
Vinicius Canto : PS: Como a linha ficou muito grande, é possível que você tenha problemas ao copiar diretamente para o Powershell. Recomendo copiar para um editor de textos antes, remover quebras de linha acidentais e em seguida copiar e colar no Powershell.
[]s,
Vinicius [9/1/07 01:08 - link]