Port forwarding is often a feature built into routers which perform NAT. It allows the router to forward any un-requested traffic generated from the Internet side of the router to a specified internal host. For example, you may run an Apache Web Server on port 80 at machine 10.0.0.5, and may want this server accessible from the Internet. A rule can be added to the router so that any requests to port 80, that are not replies to those from the local network, are forwarded to IP address 10.0.0.5.
Many routers allow you to assign a global rule such that all ports are forwarded to one internal server, or you can specify different IP addresses for different ports. If you have an FTP server running on 10.0.0.6, a separate port mapping can be created. From the outside world both port 80 and 21 are open even though the services are provided by independent internal computer systems.
You may hear a lot of complaints about NAT, especially from people on the original BT ADSL trials. These people however are incorrectly referring to NAT when they should be speaking about (the lack of) port forwarding.
Generally, yes. NAT helps to reduce the consumption of IP addresses. You can use an IP address within one of the ranges stated above for all internal hosts on your LAN, but still connect to The Internet using NAT. It should also help keep IPv4 address available until we have all converted to the new standard (IPv6).
NAT is often built into routers. It receives each packet from the internal private network and modifies the IP header to match the global IP address of the router, before it is transmitted to the outside world. The router stores the internal IP address, destination IP address and port number in a NAT table. When a request is returned on the same port, NAT matches the internal IP address that originated the request and modifies the IP header to match the internal address once again.
NAT is an acronym for Network Address Translation. It operates as a solution to having multiple, global IP addresses. If you intend to connect your current LAN to The Internet, it is likely you will use a form of NAT so that each computer does not require a global unique IP address, but instead can use private addressing within the ranges:
10.0.0.0 - 10.254.254.254
172.16.0.0 - 172.31.254.254
192.168.0.0 - 192.168.254.254
All traffic to and from the Internet passes through one host -- Usually a router.