The PAN-OS SDK for Python is a package to help interact with Palo Alto Networks devices (including physical and virtualized Next-generation Firewalls and Panorama). The pan-os-python SDK is object oriented and mimics the traditional interaction with the device via the GUI or CLI/API.
The pan-os-python SDK currently does not support the configuration of DNS proxy settings. Given the importance of DNS proxying in network security and traffic management, incorporating this feature would greatly enhance the SDK's utility. DNS proxying allows firewalls to act as DNS servers, forwarding queries based on domain names to specified DNS servers, thus improving query efficiency and localization.
Describe the solution you'd like
DNS Proxy Object Management: Ability to create, modify, and delete DNS proxy objects. This includes setting proxy names, specifying interfaces, and defining primary and secondary DNS servers.
Static Entries and Rules: Support for configuring static FQDN-to-IP mappings and DNS proxy rules, allowing for domain-specific DNS query forwarding.
Advanced Settings: Implementation of advanced DNS proxy settings such as caching, TCP/UDP query handling, and EDNS response caching.
Describe alternatives you've considered
Manipulating the XPATH of the configuration of the element directly.
In a typical setup, firewalls configured with DNS proxy can cache queries, adhere to specific rules for domain name resolution, and provide fallback to default DNS servers. This functionality is vital for optimizing DNS traffic and ensuring reliable and secure domain name resolution within network environments.
The addition should include Python methods for configuring each aspect of the DNS proxy, such as creating proxies, setting up rules, and managing advanced settings. Consideration for error handling and validation of DNS settings should also be included to ensure robustness.
Is your feature request related to a problem?
The pan-os-python SDK currently does not support the configuration of DNS proxy settings. Given the importance of DNS proxying in network security and traffic management, incorporating this feature would greatly enhance the SDK's utility. DNS proxying allows firewalls to act as DNS servers, forwarding queries based on domain names to specified DNS servers, thus improving query efficiency and localization.
Describe the solution you'd like
DNS Proxy Object Management: Ability to create, modify, and delete DNS proxy objects. This includes setting proxy names, specifying interfaces, and defining primary and secondary DNS servers. Static Entries and Rules: Support for configuring static FQDN-to-IP mappings and DNS proxy rules, allowing for domain-specific DNS query forwarding. Advanced Settings: Implementation of advanced DNS proxy settings such as caching, TCP/UDP query handling, and EDNS response caching.
Describe alternatives you've considered
Manipulating the XPATH of the configuration of the element directly.
Additional context
In a typical setup, firewalls configured with DNS proxy can cache queries, adhere to specific rules for domain name resolution, and provide fallback to default DNS servers. This functionality is vital for optimizing DNS traffic and ensuring reliable and secure domain name resolution within network environments.
The addition should include Python methods for configuring each aspect of the DNS proxy, such as creating proxies, setting up rules, and managing advanced settings. Consideration for error handling and validation of DNS settings should also be included to ensure robustness.
Example Payload