Public/New-AddressGroup.ps1
#Required by functions #New-P2PTunnel #New-P2PTunnelNAT #New-DialUPTunnelDynamic #New-DialUPTunnelStatic <# .Description Create a New Address Object .Parameter AddressNames Specify AddressNames that are to be a member of this group. Space delimited and the full string wrapped in only one set of quotes. .Parameter GroupName The Name of the AddressGroup .Example $Params = @{ AddressNames = "vlan10 vlan100 vlan 110 vlan200" GroupName = "Internal_Vlans" } New-AddressGroup @params .Example New-SSHSession -computername 192.168.0.1 $Params = @{ AddressNames = "vlan10 vlan100 vlan 110 vlan200" GroupName = "Internal_Vlans" } $command = New-AddressGroup @params $result = Invoke-SSHCommand -Command $command -SessionId 0 $result.output This example generates an SSH session and invokes the output of this function against that session. .Example New-SSHSession -computername 192.168.0.1 New-SSHSession -computername 192.168.1.1 $Params = @{ AddressNames = "vlan10 vlan100 vlan 110 vlan200" GroupName = "Internal_Vlans" } $command = New-AddressGroup @params $sessions = Get-SSHSession foreach ($session in $sessions) { Write-Output "Invoking Command against $session.host" $result = Invoke-SSHCommand -Command $command -SessionId $session.sessionID $result.output } This example generates multiple SSH sessions and invokes the output of this function against all active sessions. .Link https://github.com/TheTaylorLee/AdminToolbox/tree/master/docs #> Function New-AddressGroup { [CmdletBinding()] Param ( [Parameter(Mandatory = $true)]$GroupName, [Parameter(Mandatory = $true)]$AddressNames ) Write-Output " config firewall addrgrp edit ""$GroupName"" set member $AddressNames set allow-routing enable next end" } |