* Failed to establish TCP connection when Masqueradeing
@ 2007-04-20 14:45 Simon Olofsson
2007-04-20 18:50 ` Pascal Hambourg
0 siblings, 1 reply; 2+ messages in thread
From: Simon Olofsson @ 2007-04-20 14:45 UTC (permalink / raw)
To: netfilter
Hi,
I have a problem with my configuration that I need some help with.
The host I am using have two interfaces, one ethernet interface and
one ppp interface.
I would like all traffic to use the ethernet interface except traffic
from a specific user. I would like the traffic from this specific user
to use the ppp interface.
When I try to establish a TCP connection from the specified user I see
that the syn packet is sent out on the correct interface with the
correct source address and the syn,ack is received, but it seems like
the syn,ack is lost somewhere on my host because a new syn is sent
after a while.
What is missing?
/Simon
My configuration:
# Add rule that marked traffic shall used the table
ip rule add prio 200 fwmark 1 table 1
# Add default route to a new routing table.
ip route add default dev ppp0 tab 1
# Add NAT to ppp interface
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
# Specify which packets should use the table specified above.
iptables -t mangle -A OUTPUT -m owner --uid-owner tcg -j MARK --set-mark 1
NAT table:
Chain PREROUTING (policy ACCEPT 148 packets, 7512 bytes)
pkts bytes target prot opt in out source
destination
Chain POSTROUTING (policy ACCEPT 113 packets, 11828 bytes)
pkts bytes target prot opt in out source
destination
0 0 MASQUERADE all -- * ppp0 0.0.0.0/0
0.0.0.0/0
Chain OUTPUT (policy ACCEPT 164 packets, 14983 bytes)
pkts bytes target prot opt in out source
destination
MANGLE table
Chain PREROUTING (policy ACCEPT 217K packets, 61M bytes)
pkts bytes target prot opt in out source
destination
Chain INPUT (policy ACCEPT 223K packets, 61M bytes)
pkts bytes target prot opt in out source
destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source
destination
Chain OUTPUT (policy ACCEPT 281K packets, 38M bytes)
pkts bytes target prot opt in out source
destination
0 0 MARK all -- * * 0.0.0.0/0
0.0.0.0/0 OWNER UID match 1000 MARK set 0x1
Chain POSTROUTING (policy ACCEPT 281K packets, 38M bytes)
pkts bytes target prot opt in out source
destination
ifconfig:
eth0 Link encap:Ethernet HWaddr 00:40:63:E8:11:6A
inet addr:192.168.115.4 Bcast:192.168.115.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:233357 errors:0 dropped:0 overruns:0 frame:0
TX packets:269612 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:64151807 (61.1 Mb) TX bytes:40208375 (38.3 Mb)
Interrupt:16 Base address:0xe000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:23 errors:0 dropped:0 overruns:0 frame:0
TX packets:23 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:1468 (1.4 Kb) TX bytes:1468 (1.4 Kb)
ppp0 Link encap:Point-to-Point Protocol
inet addr:10.145.56.112 P-t-P:10.0.0.2 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:9 errors:0 dropped:0 overruns:0 frame:0
TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:84 (84.0 b) TX bytes:96 (96.0 b)
ip rule show:
0: from all lookup local
200: from all fwmark 0x1 lookup 1
32766: from all lookup main
32767: from all lookup default
route:
10.0.0.2 dev ppp0 proto kernel scope link src 10.145.56.112
192.168.115.0/24 dev eth0 proto kernel scope link src 192.168.115.4
default via 192.168.115.1 dev eth0
ip route show table 1:
default dev ppp0 scope link
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: Failed to establish TCP connection when Masqueradeing
2007-04-20 14:45 Failed to establish TCP connection when Masqueradeing Simon Olofsson
@ 2007-04-20 18:50 ` Pascal Hambourg
0 siblings, 0 replies; 2+ messages in thread
From: Pascal Hambourg @ 2007-04-20 18:50 UTC (permalink / raw)
To: netfilter
Hello,
Simon Olofsson a écrit :
>
> I would like all traffic to use the ethernet interface except traffic
> from a specific user. I would like the traffic from this specific user
> to use the ppp interface.
>
> When I try to establish a TCP connection from the specified user I see
> that the syn packet is sent out on the correct interface with the
> correct source address and the syn,ack is received, but it seems like
> the syn,ack is lost somewhere on my host because a new syn is sent
> after a while.
>
> What is missing?
Check that source validation by reversed path is disabled at least for
the PPP interface (/proc/sys/net/ipv4/conf/ppp0/rp_filter=0 or
/proc/sys/net/ipv4/conf/all/rp_filter=0).
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2007-04-20 18:50 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-04-20 14:45 Failed to establish TCP connection when Masqueradeing Simon Olofsson
2007-04-20 18:50 ` Pascal Hambourg
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.