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.
*/