It *is* completely possible.
DHCP uses Layer 2 broadcast to work.
This is why a DHCP server do not provide IP addresses to other subnets by default. By default it just don’t “listen” to this requests. This is by design.
To make this work, you have to configure your router on Site B to forward DHCP requests to the DHCP Server on Site A.
If we’re talking about a cisco router, the command you should use is the ip-helper-address
This might work for you:
Besides this, you need the DHCP server an appropriate IP Pool scope configured for the specific subnet from where the DHCP request came [Site B].
Using this IP scope, the server will assign an appropriate IP address to the requesting client.
For example, if the DHCP client subnet is 192.168.1.0/24 [Site B], then the remote DHCP server must have an IP Pool configured to assign addresses within the range 192.168.1.0/24. The source DHCP client subnet is determined by the IP address assigned to the Layer3 interface which has the ip helper-address configured.
Please post back any further questions