Discourse under 2 hostnames

One solution would be to have discoursehostname on Subnet A resolve to the subnet A address and have it resolve to subnet B on the other network. I think you might even be able to have discoursehostname resolve to both the subnet A and the subnet B addresses and the OS would figure out which one to connect to.