Here is a quick script I wrote to do some testing of dhcp-client and ddns updates… this rotates a statically assigned dhcp address.
:set i [ /ip dhcp-server lease get [find comment="SonicWall Box"] address ]
:if ($i>10.10.30.250) do={:set i 10.10.30.10} else={:set i ($i+1)}
/ip dhcp-server lease set [find comment="SonicWall Box"] address=$i