I have a remote location ASA5505 which is connected through an IPVPN/MPLS backbone to an ASA5520. Behind the 5520 lies the DHCP server.
When I debug and use capture I can see the unicast packets from the DHCP relay agent on the 5505 all the way through the 5520 and exiting out the interface towards the DHCP server.
outside: 192.168.254.28/30 (with .30 as the ip on the interface)
Config on the 5520 is irrelevant, but there are no rules blocking the traffic.
The packet towards the server looks like this.
192.168.254.30(67) -> 192.168.100.13(67)
The return packet looks like this:
192.168.100.13(67) -> 192.168.113.1(67)
AFAIK the return packet should go to 192.168.254.30 which is the source. I can imagine the dhcprelay agent on the 5505 is becoming confused when the reply is sent to a different address.