Dave Smith wrote:
I have a laptop setup with the following network interfaces:

 eth0: wired ethernet to the wild, wild internet
 eth1: 802.11g card in ad-hoc mode acting as an access point
 ppp0: cellular card that also goes to the wild, wild internet

All three interfaces work just fine individually. The problem is when I try to use ppp0 as a masquerade for computers connected to eth1.

When I run this rule, all is well and wireless clients connected to eth1 get internet access through eth0:

/sbin/iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE

But when I use this rule, clients can't access the internet:

/sbin/iptables --table nat --append POSTROUTING --out-interface ppp0 -j MASQUERADE

I am able to ping internet hosts through ppp0 on my laptop like this:

   ping -I ppp0 google.com   (works fine, confirmed with tcpdump)
   ping -I eth0 google.com

However, I can't traceroute via ppp0. I get this:

$ sudo traceroute -i ppp0 google.com
traceroute to google.com (64.233.167.99), 30 hops max, 40 byte packets
send: No buffer space available

Strange.
Can you do 'telnet google.com 80` and get a connection? Sprint might be doing something that prevents traceroute. Trying to connect to the web server will let you know if you can do regular tcp communication. (although the fact that you did a DNS lookup would indicate that you can). Just a thought.

Mike

/*
PLUG: http://plug.org, #utah on irc.freenode.net
Unsubscribe: http://plug.org/mailman/options/plug
Don't fear the penguin.
*/

Reply via email to