Problem about ppp -nat

Pongthep Kulkrisada ptkrisada at
Thu Nov 20 22:38:37 PST 2008

Hi All,

I have just subscribed to freebsd-questions and I have a question about ppp -nat.

I have 2 computers. One is running FreeBSD-7.0R, the other is running WinXP. The host running FBSD7.0R has been connecting to the outside world using user-ppp without any problem for very long. Now I want to share internet access to the other host behind NAT through this FBSD host.
My FBSD machine has 2 interfaces i.e.
	tun0 (connecting to ISP) with dynamic IP (of course)
	fxp0 (for internal LAN) with static IP of
My WinXP machine has 1 interface (internal LAN) with static IP of

Previously I have a router acting as a gateway for all machines behind NAT. But now I want FBSD machine to work as a gateway. I have never done this before. I tried some googling with reading ppp(8) and ipfw(8). And I tried masquerading but it didn't work. I have plenty configuration files. But the relevant configurations are listed here.

# enable IP forwarding
# previously I ran web-server, just disable it or comment it out, not sure why!

On the host running WinXP, I set its gateway and DNS server to the IP of ppp host i.e.

I then inserted the following line as the first rule in /etc/ipfw.rules.
/sbin/ipfw add allow all from any to any via fxp0
(I know this rule is dangerous, but just for testing.)

I then issue the ppp command.
root at fbsd:~# ppp -background -nat myisp

FBSD host (running ppp) can access anywhere but WinXP host can't. I learned from some site explaining that ppp itself has the capability of IP masquerading. And it does not require natd(8). So I don't mention about natd here.
Anyone have a clue or who have done the correct configurations, please point me out.

Thank you in advance.

More information about the freebsd-questions mailing list