I have the following setup:
Client --> eth2(10.4.0.1/16) - router / - eth1(10.3.0.1/16) --> dhcp-server(10.3.0.150)
dhcp-relay
If the client starts a dhcp-request it receives the dhcp-relay and the dhcp-relay forwards this request to the dhcp-server:
IP 0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from << MAC >> (oui Unknown), length 340
The dhcp-server receives this request and sends a reply to the routers interface on client side:
IP 10.3.0.1.bootps > 10.3.0.150.bootps: BOOTP/DHCP, Request from b8:27:eb:61:ef:c1 (oui Unknown), length 340
IP 10.3.0.150.bootps > 10.0.4.1.bootps: BOOTP/DHCP, Reply, length 300
But this reply is never reaching the client who started the request. For testing all firewalls are disabled, so that there are no packages dropped...