By that I mean it magnifies the likelihood that a poorly written application will fail. It is possible to do a good job of updating the A records by adding a script to /etc/network/if-up.d/.
All of the A records in question can be in the same zone file. $TTL 3600 ; 1 hour ns A 10.0.0.1 mail A 10.0.0.1 localhost A 127.0.0.1 h A .1 A .1 A .1 red.h A .1 green.h A .1 blue.h A .1 $TTL 86400 @ IN SOA ns. ( 2011000001 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) ; Minimum NS ns. There are multiple reasons why this is better than relying on the DHCP daemons to do it.
If you try it, any attempt to ifup one interface brings up the other also.
Simiilarly, any attempt to ifdown one interface brings down the other also.
Here is a little script to check DNS records for consistency. When a lookup returns multiple results, the default server behavior is to return them in a different order each time.