Lets assume that you want to redirect user from IP1 to IP2. In order to do so you must do the following:
1) For the outgoing packet change destination IP from IP1 to IP2 and recalcuilate IP checksum. Save the connection state (IP’s, TCP ports).
2) For the incoming packet check if it is from IP2 and if yes also check port information (to be sure that this packet is associated with redirected connection). After this substitute source IP from IP2 to IP1 and recalculate IP checksum.
3) And so on… For the outgoing packets use 1) and use 2) for incoming.