I think iptables is what you're looking for and it should already be installed with Ubuntu.
It may take a bit of trial and error but something like the commands below should do the trick:
iptables -A PREROUTING -t nat -i eth1 -p tcp --dport 555 -j DNAT --to 192.168.0.21:555
iptables -A INPUT -p tcp -m state --state NEW --dport 555 -i eth1 -j ACCEPT
A more detailed explanation of what these commands do can be found here.
Another method is to use a program called rinetd which is available in Ubuntu via synaptic.
Redirects TCP connections from one IP
address and port to another. rinetd is
a single-process server which handles
any number of connections to the
address/port pairs specified in the
There's a nice guide on how to use it here