netfilter-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Davi Baldin Tavares <davi@presentia.com.br>
To: netfilter-devel <netfilter-devel@vger.kernel.org>
Subject: iptables MARK + ip rule fwmark NOT working with load balance
Date: Tue, 25 Jan 2011 17:19:00 -0200	[thread overview]
Message-ID: <AANLkTiknnxtm6eZOOraL50wvqpopzsapzU1HmK2K4Lse@mail.gmail.com> (raw)
In-Reply-To: <AANLkTinT4NGYFPSCA43b9+6RYATe+WtN1Yh7_0HGM3pp@mail.gmail.com>

Hello List,

I have two NICs (eth1 and eth2) on my box, each one connected over a
different ISP and both are configured in loadbalance (nexthop bla
bla).

I'm unable to use a specific interface by marking packets with
iptables MARK/CONNMARK regardless the load-balancing on the box. I
would like to set up for example all SMTP traffic (locally generated
or not) going out only by the eth2, however, I can't see this working
out.

My setup is:

# iptables -t mangle -L -n -v
Chain PREROUTING (policy ACCEPT 753K packets, 356M bytes)
 pkts bytes target     prot opt in     out     source               destination
  810 35766 CONNMARK   all  --  eth2   *       0.0.0.0/0
0.0.0.0/0           state NEW CONNMARK set 0x81
   19  2810 CONNMARK   all  --  eth3   *       0.0.0.0/0
0.0.0.0/0           state NEW CONNMARK set 0x82
 7657  670K CONNMARK   all  --  *      *       0.0.0.0/0
0.0.0.0/0           CONNMARK restore

Chain OUTPUT (policy ACCEPT 381K packets, 185M bytes)
 pkts bytes target     prot opt in     out     source               destination
   32  2099 CONNMARK   tcp  --  *      *       0.0.0.0/0
0.0.0.0/0           tcp dpt:25 CONNMARK set 0x82
   32  2099 MARK       tcp  --  *      *       0.0.0.0/0
0.0.0.0/0           tcp dpt:25 MARK set 0x82

(As you can see, packages are being marked).

# ip rule list
0:      from all lookup 255
3:      from all fwmark 0x82 lookup link2
3:      from all fwmark 0x81 lookup link1
10:     from 200.174.194.44 lookup link2
10:     from 201.26.37.40 lookup link1
32766:  from all lookup main
32767:  from all lookup default

# ip route list
200.174.194.40/29 dev eth3  proto kernel  scope link  src 200.174.194.44
201.26.37.0/24 dev eth2  proto kernel  scope link  src 201.26.37.40
default
        nexthop via 200.174.194.41  dev eth3 weight 1
        nexthop via 201.26.37.1  dev eth2 weight 3

At this point the mark 0x82 is related to the link on the eth3 (net
200.174.194.41). However, using this setup, the outgoing packets
almost always came from eth2 (which has a bigger weight on the
balance). I believe the balance is working (and acting on this case)
and the mark and route from a specific interface is not.

Do you happen to know something that could give me some light or
directions on order to put this working fine?

Cheers,

Davi
--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

       reply	other threads:[~2011-01-25 19:19 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <AANLkTinT4NGYFPSCA43b9+6RYATe+WtN1Yh7_0HGM3pp@mail.gmail.com>
2011-01-25 19:19 ` Davi Baldin Tavares [this message]
2011-01-25 19:56   ` iptables MARK + ip rule fwmark NOT working with load balance Eric Dumazet
2011-01-25 20:06     ` Davi Baldin Tavares

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=AANLkTiknnxtm6eZOOraL50wvqpopzsapzU1HmK2K4Lse@mail.gmail.com \
    --to=davi@presentia.com.br \
    --cc=netfilter-devel@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).