Win2K3 Terminal server behind BM3.8

currently running with a Generic TCP Proxy which works really well
except....when remote session disconnects, for any reason, on re-connection
user always gets a fresh TS session, and does not get the session they
disconnected from.

this doesn't happen with sessions which are entirely inside the firewall, so
we figure TS is working properly, but get confused with external sessions as
they all come from the BM private IP address

any recommendations on the best when to setup TS behind BM to get around
this problem?