## The *send-udp.ps1* Script This PowerShell script sends a UDP datagram message to an IP address and port. ## Parameters ```powershell /home/mf/Repos/PowerShell/Scripts/send-udp.ps1 [[-TargetIP] ] [[-TargetPort] ] [[-Message] ] [] -TargetIP Specifies the target IP address Required? false Position? 1 Default value Accept pipeline input? false Accept wildcard characters? false -TargetPort Specifies the target port number Required? false Position? 2 Default value 0 Accept pipeline input? false Accept wildcard characters? false -Message Specifies the message text to send Required? false Position? 3 Default value Accept pipeline input? false Accept wildcard characters? false [] This script supports the common parameters: Verbose, Debug, ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer, PipelineVariable, and OutVariable. ``` ## Example ```powershell PS> ./send-udp 192.168.100.100 8080 "TEST" ✔️ Done. ``` ## Notes Author: Markus Fleschutz | License: CC0 ## Related Links https://github.com/fleschutz/PowerShell ## Source Code ```powershell <# .SYNOPSIS Sends a UDP datagram message to an IP address and port .DESCRIPTION This PowerShell script sends a UDP datagram message to an IP address and port. .PARAMETER TargetIP Specifies the target IP address .PARAMETER TargetPort Specifies the target port number .PARAMETER Message Specifies the message text to send .EXAMPLE PS> ./send-udp 192.168.100.100 8080 "TEST" ✔️ Done. .LINK https://github.com/fleschutz/PowerShell .NOTES Author: Markus Fleschutz | License: CC0 #> param([string]$TargetIP = "", [int]$TargetPort = 0, [string]$Message = "") try { if ($TargetIP -eq "" ) { $TargetIP = read-host "Enter target IP address" } if ($TargetPort -eq 0 ) { $TargetPort = read-host "Enter target port" } if ($Message -eq "" ) { $Message = read-host "Enter message to send" } $IP = [System.Net.Dns]::GetHostAddresses($TargetIP) $Address = [System.Net.IPAddress]::Parse($IP) $EndPoints = New-Object System.Net.IPEndPoint($Address, $TargetPort) $Socket = New-Object System.Net.Sockets.UDPClient $EncodedText = [Text.Encoding]::ASCII.GetBytes($Message) $SendMessage = $Socket.Send($EncodedText, $EncodedText.Length, $EndPoints) $Socket.Close() "✔️ Done." exit 0 # success } catch { "⚠️ Error in line $($_.InvocationInfo.ScriptLineNumber): $($Error[0])" exit 1 } ``` *Generated by convert-ps2md.ps1 using the comment-based help of send-udp.ps1*