mirror of
https://github.com/freedbygrace/PSOPNSenseAPI.git
synced 2026-08-04 07:57:42 +00:00
Add port forwarding support, improve XML documentation, and add unit tests
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
# Import the module
|
||||
Import-Module PSOPNSenseAPI
|
||||
|
||||
# Connect to the OPNSense firewall
|
||||
Connect-OPNSense -Server "https://firewall.example.com" -ApiKey "your_api_key" -ApiSecret "your_api_secret" -SkipCertificateCheck
|
||||
|
||||
# Get all DHCP servers
|
||||
$dhcpServers = Get-OPNSenseDHCPServer
|
||||
$dhcpServers | Format-Table -Property Interface, Enabled, RangeFrom, RangeTo, Gateway
|
||||
|
||||
# Get a specific DHCP server
|
||||
$lanDhcp = Get-OPNSenseDHCPServer -Interface "lan"
|
||||
$lanDhcp
|
||||
|
||||
# Update a DHCP server
|
||||
Set-OPNSenseDHCPServer -Interface "lan" -RangeFrom "192.168.1.100" -RangeTo "192.168.1.200" -Domain "example.local" -DnsServers "8.8.8.8","8.8.4.4" -Apply
|
||||
|
||||
# Get all DHCP leases
|
||||
$dhcpLeases = Get-OPNSenseDHCPLease
|
||||
$dhcpLeases | Format-Table -Property MacAddress, IpAddress, Hostname, State
|
||||
|
||||
# Get active DHCP leases
|
||||
$activeLeases = $dhcpLeases | Where-Object { $_.State -eq "active" }
|
||||
$activeLeases | Format-Table -Property MacAddress, IpAddress, Hostname
|
||||
|
||||
# Get all static mappings for an interface
|
||||
$staticMappings = Get-OPNSenseDHCPStaticMapping -Interface "lan"
|
||||
$staticMappings | Format-Table -Property Uuid, MacAddress, IpAddress, Hostname, Description
|
||||
|
||||
# Create a new static mapping
|
||||
$newMapping = New-OPNSenseDHCPStaticMapping -Interface "lan" -MacAddress "00:11:22:33:44:55" -IpAddress "192.168.1.50" -Hostname "printer" -Description "Office Printer" -Apply
|
||||
$newMapping
|
||||
|
||||
# Update a static mapping
|
||||
Set-OPNSenseDHCPStaticMapping -Interface "lan" -Uuid $newMapping -IpAddress "192.168.1.51" -Description "Updated Printer" -Apply
|
||||
|
||||
# Remove a static mapping
|
||||
Remove-OPNSenseDHCPStaticMapping -Interface "lan" -Uuid $newMapping -Force -Apply
|
||||
|
||||
# Disconnect from the firewall
|
||||
Disconnect-OPNSense
|
||||
Reference in New Issue
Block a user