I'm pretty sure that what I need done can be accomplished with iptables, but have been unable to find an example describing my situation.
Short version: I want any packets coming from a particular netblock to appear to all systems behind the firewall as actually coming from a different netblock, for example, any traffic from 10.0.0.0/8 might appear to actually come from 192.0.0.0/8.
Long version: I have multiple machines behind a NAT firewall. One machine runs VPN software to connect to a corporate network, and occasionally I have a need to connect back to that machine from the office, and am unable to do so unless the VPN is turned off. Since the traffic is coming in from an IP range that the machine running VPN has a separate route back to, it ends up routing the packets to the wrong interface, and the connection fails. If I can make these packets appear to come from a different IP range, they should get routed out the correct interface.
Hopefully, that makes sense, and someone has a clue about what I need here. I think that SNAT might be what I'm needing, but haven't found an example that seems similar to what I'm after.