From: Bernhard Rosenkraenzer <bero@linux.cd>
To: netfilter@vger.kernel.org
Subject: Weird NAT problem
Date: Sat, 1 Nov 2008 23:07:18 +0100 [thread overview]
Message-ID: <200811012307.18305.bero@linux.cd> (raw)
Hi,
I've set up a basic masquerading NAT box to share a PPPoE connection between
various boxes.
I've done the same thing the same way before without running into trouble -
but this time, clients have no problem keeping an existing transfer going,
but initiating connections seems to be troublesome.
The basic setup: The line comes in to my eth0; I'm using rp-pppoe 3.10 and ppp
2.4.4 (with kernel mode PPPoE enabled) on Linux 2.6.27.2, iptables userland
1.4.1.1 (also tried 1.4.2-rc1, same results).
eth0 doesn't have an IP address assigned (but ppp0 on top of eth0 does).
eth1 uses IP address 192.168.1.1/255.255.255.0, and connects to the other
boxes through a switch.
I'm doing
echo 1 >/proc/sys/net/ipv4/ip_forward
echo 1 >/proc/sys/net/ipv4/conf/all/forwarding
iptables -P INPUT ACCEPT
iptables -F INPUT
iptables -P OUTPUT ACCEPT
iptables -F OUTPUT
iptables -P FORWARD DROP
iptables -F FORWARD
iptables -A FORWARD -i ppp0 -o eth1 -m state --state ESTABLISHED,RELATED -j
ACCEPT
iptables -A FORWARD -i eth1 -o ppp0 -j ACCEPT
iptables -t nat -F
iptables -t nat -A POSTROUTING -s 192.168.2.0/255.255.255.0 -o ppp0 -j
MASQUERADE
There are several public IPs on the PPPoE connection, so I use
iptables -t nat -A PREROUTING -d XXX.XXX.XXX.XXX -j DNAT --to-destination
192.168.2.2
iptables -t nat -A POSTROUTING -s 192.168.2.2 -j SNAT --to-source
XXX.XXX.XXX.XXX
to make 192.168.2.2 reachable from the outside world (but the troubles start
before doing that).
On 192.168.2.2, a lot of things work:
$ ping ftp.ch.kernel.org
PING ftp.ch.kernel.org (212.40.5.79): 56 data bytes
64 bytes from 212.40.5.79: icmp_seq=0 ttl=61 time=11.645 ms
[...]
$ traceroute ftp.ch.kernel.org
traceroute to ftp.ch.kernel.org (212.40.5.79), 64 hops max, 40 byte packets
1 192.168.2.1 (192.168.2.1) 0.551 ms 0.258 ms 0.231 ms
2 bas-flu-as-10-01-lb-1.vtxnet.net (212.254.136.1) 10.988 ms 11.018 ms
10.728 ms
3 bas-flu-cr-76-02-ge-2-3.vtxnet.net (212.147.63.190) 11.476 ms 11.367 ms
11.479 ms
4 ftp.datacomm.ch (212.40.5.79) 10.739 ms 11.558 ms 10.972 ms
BUT
$ curl -o kernel.tar.bz2
http://ftp.ch.kernel.org/pub/linux/kernel/v2.6/linux-2.6.27.tar.bz2
hangs without getting any data.
There is no problem with the line itself, because I can use everything on the
router just fine, and I can even scp huge files from the outside to the
public IP of 192.168.2.2 without running into the slightest problems.
I've tried doing some bad stuff like
iptables -P FORWARD ACCEPT
to make sure my rules are ok, and it didn't change anything.
192.168.2.2 is an OSX box - an OS I happen to know next to nothing about
(Linux purist here...), 192.168.2.3 behaves the same way as 192.168.2.2, and
is a Linux box running on 192.168.2.2 inside Parallels Server.
Any idea what's going wrong there? Is there anything I'm overlooking with my
routing setup, or do I need to look for the problem on the OSX side?
Thanks
Bernhard
next reply other threads:[~2008-11-01 22:07 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-11-01 22:07 Bernhard Rosenkraenzer [this message]
2008-11-01 22:48 ` Weird NAT problem Grant Taylor
2008-11-01 22:52 ` Grant Taylor
2008-11-01 23:52 ` Bernhard Rosenkraenzer
2008-11-02 0:51 ` Grant Taylor
2008-11-02 11:08 ` Pascal Hambourg
2008-11-02 18:50 ` Grant Taylor
2008-11-01 22:59 ` Bernhard Rosenkraenzer
2008-11-01 23:14 ` Grant Taylor
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200811012307.18305.bero@linux.cd \
--to=bero@linux.cd \
--cc=netfilter@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.