Questions on IPFW???

Hakim Z. Singhji hakim.singhji at
Tue Aug 3 09:49:44 PDT 2004

Hello Chuck,

I was wondering if someone could help me answer some questions I have concerning IPFW vs. natd I am trying to allow my FreeBSD 4.10 gateway to perform port forwarding for SSH, SQL*Net and Webservice (Web not as important yet). 

I wanted to know if I can use IPFW as opposed to natd to redirect or pass TCP & UDP (is ICMP out of the question???) to a remote location.  Gateway:: --> remote server or for instance. From the configuration of ipfw it appears that it can be done instead of using natd.

Any suggestions or corrections of my logic welcome. Thanks in advance.


-----Original Message-----
From: Chuck Swiger <cswiger at>
Sent: Aug 3, 2004 12:40 PM
To: "Hakim Z. Singhji" <hakim.singhji at>
Cc: questions at
Subject: Re: Questions on IPFW???

Hakim Z. Singhji wrote:
> Question, when NAT overloading is it possible to use only IPFW rules to
> pass TCP/UDP packects to remote ip addresses within the network?

I don't know what "NAT overloading" means.

It is possible to use only IPFW rules to pass TCP & UDP packets from one 
interface to another using the fwd action.  However, note that:

           The fwd action does not change the contents of the packet at all.
           In particular, the destination address remains unmodified, so
           packets forwarded to another system will usually be rejected by
           that system unless there is a matching rule on that system to
           capture them.  For packets forwarded locally, the local address
           of the socket will be set to the original destination address of
           the packet.  This makes the netstat(1) entry look rather weird
           but is intended for use with transparent proxy servers.

> Or do you have to use natd...because IPFW allows you to execute
> the following for example:
> ****************************************************
> ip from 80 to 9981
> ****************************************************

That's the body of an IPFW rule which matches packets with those attributes. 
Without an action ("allow", "deny", "fwd"), what you've written isn't a 
complete rule: it doesn't mean anything by itself.

> or even in conjunction with a dummynet rule of somesort?

Um.  Do you understand the question you are asking?

I don't-- perhaps try using a complete sentence.  Better yet, why don't you 
tell us what your network looks like and what you want to do.  You most likely 
will receive answers which are more specific and more useful to you...


More information about the freebsd-questions mailing list