pppoe and nat problem

munkhbayar batkhuu bmr333 at gmail.com
Sun Jul 1 18:21:30 UTC 2007

hi all.

I'm trying to solve one problem but with no success in 1 week.

I'm setting up Gateway server with PPPoE functionality for per LAN
users to authenticate and traffic shaping. Incoming Internet
connection is Ethernet. This PC have 2 NIC. LAN NIC do not have IP

pppoe listens on LAN side interface and passes connection to user land ppp.
(traffic shaping is via IPFW)
ppp handles all other tasks like Proxy-Arp and so on.

I have only 8 public IP address from ISP.
So current test configuration is "Proxy-Arp" in ppp.conf and PPP's
DHCP range is within ISP allocated zone. Every thing is Ok, with this
configuration, LAN users can surf the net. This configuration can
support at most, ISP allocated IP numer of concurrent connections.
If I allocate exceeding IP zone for DHCP in ppp.conf like
"set ifaddr 100.200.300.1 100.200.300.2-100.200.300.100" then ppp.log
says "ppp Warning: xx.xx.xx.xx : Cannot determine ethernet address for
proxy ARP", maybe it's obvious because of its not in Internet IP zone

But I need to support at least 50 simultaneous connection.
If possible, I need NAT in inside PPP. I tried, tried, reed many
times. No success.

In ppp(8) man it says "NAT is done on the external interface only, and
is unlikely to make sense if used with the -direct flag."  Current
pppoed forks /usr/sbin/ppp with the "-direct" argument.  Is it clue on
this problem?

How to NAT or Route if PPP's DHCP IP zone is different from Gateway IP
zone when ppp is working in "-direct" mode.  How to to route traffic
within tunX and Gateway NIC?
Or is there any other solutions for this?

Thanks in advance. Help much appreciated.

More information about the freebsd-questions mailing list