<form>
    <field>
        <id>range.interface</id>
        <label>Interface</label>
        <type>dropdown</type>
        <help>Interface to serve this range</help>
    </field>
    <field>
        <id>range.set_tag</id>
        <label>Tag [set]</label>
        <type>dropdown</type>
        <help>Optional tag to set for requests matching this range which can be used to selectively match dhcp options</help>
    </field>
    <field>
        <id>range.start_addr</id>
        <label>Start address</label>
        <type>text</type>
        <help>Start of the range, e.g. 192.168.1.100 for DHCPv4, 2000::1 for DHCPv6 or when a constructor is using a suffix like ::1. To reveal IPv6 related options, enter a IPv6 address. When using router advertisements, it is possible to use a constructor with :: as the start address and no end address.</help>
    </field>
    <field>
        <id>range.end_addr</id>
        <label>End address</label>
        <type>text</type>
        <help>End of the range.</help>
    </field>
    <field>
        <id>range.constructor</id>
        <label>Constructor</label>
        <type>dropdown</type>
        <style>selectpicker</style>
        <help>Interface to use to calculate a DHCPv6 or RA range. Start address can then be specified as a suffix (e.g. ::, ::1 or ::400).</help>
        <grid_view>
            <visible>false</visible>
        </grid_view>
    </field>
    <field>
        <id>range.prefix_len</id>
        <label>Prefix length (ipv6)</label>
        <type>text</type>
        <hint>64</hint>
        <style>style_dhcpv6</style>
        <help>Prefix length offered to the client. Custom values in this field will be ignored if Router Advertisements are enabled, as SLAAC will only work with a prefix length of 64.</help>
        <grid_view>
            <visible>false</visible>
        </grid_view>
    </field>
    <field>
        <id>range.ra_mode</id>
        <label>RA Mode</label>
        <type>select_multiple</type>
        <hint>Default</hint>
        <style>selectpicker style_dhcpv6</style>
        <help>Control how IPv6 clients receive their addresses. Enabling Router Advertisements in general settings will enable it for all configured DHCPv6 ranges with the managed address bits set, and the use SLAAC bit reset. To change this default, select a combination of the possible options here. "slaac", "ra-stateless" and "ra-names" can be freely combined, all other options shall remain single selections.</help>
        <grid_view>
            <visible>false</visible>
        </grid_view>
    </field>
    <field>
        <id>range.ra_priority</id>
        <label>RA Priority</label>
        <type>dropdown</type>
        <help>Priority of the RA announcements.</help>
        <style>selectpicker style_ra</style>
        <grid_view>
            <visible>false</visible>
        </grid_view>
    </field>
    <field>
        <id>range.ra_mtu</id>
        <label>RA MTU</label>
        <type>text</type>
        <style>style_ra</style>
        <help>Optional MTU to send to clients via Router Advertisements. If unsure leave empty.</help>
        <grid_view>
            <visible>false</visible>
        </grid_view>
    </field>
    <field>
        <id>range.ra_interval</id>
        <label>RA Interval</label>
        <type>text</type>
        <hint>60</hint>
        <style>style_ra</style>
        <help>Time (seconds) between Router Advertisements.</help>
        <grid_view>
            <visible>false</visible>
        </grid_view>
    </field>
    <field>
        <id>range.ra_router_lifetime</id>
        <label>RA Router Lifetime</label>
        <type>text</type>
        <hint>1200</hint>
        <style>style_ra</style>
        <help>The lifetime of the route may be changed or set to zero, which allows a router to advertise prefixes but not a route via itself. When using HA, setting a short timespan here is adviced for faster IPv6 failover. A good combination could be 10 seconds RA interval and 30 seconds RA router lifetime. Going lower than that can pose issues in busy networks.</help>
        <grid_view>
            <visible>false</visible>
        </grid_view>
    </field>
    <field>
        <id>range.mode</id>
        <label>Mode</label>
        <type>select_multiple</type>
        <style>selectpicker style_dhcpv4</style>
        <help>Mode flags to set for this range, 'static' means no addresses will be automatically assigned. </help>
    </field>
    <field>
        <id>range.lease_time</id>
        <label>Lease time</label>
        <type>text</type>
        <hint>86400</hint>
        <help>Defines how long the addresses (leases) given out by the server are valid (in seconds)</help>
        <grid_view>
            <visible>false</visible>
        </grid_view>
    </field>
    <field>
        <id>range.domain</id>
        <label>Domain</label>
        <type>text</type>
        <help>Offer the specified domain to machines in this range.</help>
    </field>
    <field>
        <id>range.nosync</id>
        <label>Disable HA sync</label>
        <type>checkbox</type>
        <help>Ignore this range from being transfered or updated by ha sync.</help>
        <grid_view>
            <type>boolean</type>
            <formatter>boolean</formatter>
        </grid_view>
    </field>
    <field>
        <id>range.description</id>
        <label>Description</label>
        <type>text</type>
        <help>You may enter a description here for your reference (not parsed).</help>
    </field>
</form>
