next up previous contents
Next: How it works. Up: Route NAT status Previous: Route NAT status   Contents

What it is not:

It is necessary to emphasize that it is not supposed to be used to compress address space or to split load. This is not missing functionality but a design principle. Route NAT is stateless. It does not hold any state about translated sessions. This means that it handles any number of sessions flawlessly. But it also means that it is static. It cannot detect the moment when the last TCP client stops using an address. For the same reason, it will not help to split load between several servers. 1cm NB. It is a pretty commonly held belief that it is useful to split load between several servers with NAT. This is a mistake. All you get from this is the requirement that the router keep the state of all the TCP connections going via it. Well, if the router is so powerful, run apache on it. 8)

The second feature: it does not touch packet payload, does not try to ``improve'' broken protocols by looking through its data and mangling it. It mangles IP addresses, only IP addresses and nothing but IP addresses. This also, is not missing any functionality.

To resume: if you need to compress address space or keep active FTP clients happy, your choice is not route NAT but masquerading, port forwarding, NAPT etc. 1cm NB. By the way, you may also want to look at http://www.suse.com/mha/HyperNews/get/linux-ip-nat.html


next up previous contents
Next: How it works. Up: Route NAT status Previous: Route NAT status   Contents
Martin A. Brown 2003-03-14