Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 20 Mar 2008 16:22:51 +0200
From:      "Vlad GALU" <dudu@dudu.ro>
To:        "Stefan Lambrev" <stefan.lambrev@moneybookers.com>
Cc:        freebsd-net@freebsd.org
Subject:   Re: route-to not working
Message-ID:  <ad79ad6b0803200722y51697e6eid0ea30f3f18d36c1@mail.gmail.com>
In-Reply-To: <47E26A10.4040305@moneybookers.com>
References:  <a49a70ea0803190611u317b289fkb3c7c3c82bdd7c2f@mail.gmail.com> <a49a70ea0803200524h594d5cb3pcfc903145fc244a7@mail.gmail.com> <47E25F45.8010805@moneybookers.com> <ad79ad6b0803200606n1fc2bffhb56e836412b61791@mail.gmail.com> <47E26A10.4040305@moneybookers.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 3/20/08, Stefan Lambrev <stefan.lambrev@moneybookers.com> wrote:
>
>
>  Vlad GALU wrote:
>  > On 3/20/08, Stefan Lambrev <stefan.lambrev@moneybookers.com> wrote:
>  >
>  >> Greetings,
>  >>
>  >>
>  >>
>  >>  Wesley wrote:
>  >>  >  Dear people,
>  >>  >
>  >>  > I have 2 links on a box, and I don't want to load balance it but, only to
>  >>  > reply requests in the same interface that it comes.
>  >>  >
>  >>  > I tried to use the route-to, but it not seems to work.
>  >>  >
>  >>  > Could you please, give-me a help?
>  >>  >
>  >>
>  >> I do not see where you use "reply-to" in you configuration
>  >>
>  >>  But here is working example which you can improve off course.
>  >>
>  >>  #dual home
>  >>  pass in on $ext_if1 reply-to ($ext_if1 $gw1) from any to $external_addr1
>  >>  keep state
>  >>  pass out on $ext_if2 route-to ($ext_if1 $gw1) from $external_addr1 to any
>  >>  pass in on $ext_if2 reply-to ($ext_if2 $gw2) from any to $external_addr2
>  >>  keep state
>  >>  pass out on $ext_if1 route-to ($ext_if2 $gw1) from $external_addr2 to any
>  >>
>  >>  #dual home ssh only
>  >>  pass out on $ext_if2 route-to ($ext_if1 $gw1) from $external_addr1 to any
>  >>  pass out on $ext_if1 route-to ($ext_if2 $gw1) from $external_addr2 to any
>  >>  pass in on $ext_if1 reply-to ($ext_if1 $gw1) proto tcp from any to
>  >>  $external_addr1 port 22 keep state
>  >>  pass in on $ext_if2 reply-to ($ext_if2 $gw2) proto tcp from any to
>  >>  $external_addr2 port 22 keep state
>  >>
>  >
>  >
>  >     Don't mind me asking, but isn't your example working due to your
>  > route-to rules? I, as well as Wesley, assumed that reply-to should've
>  > been enough to reach the goal.
>  >
>
> It's working because of reply-to rules - incoming packets does not match
>  "pass out route-to" rules.
>  The "pass out" rules are needed if the packet(s) is generated locally
>  and does not match the "pass in" rules.
>
>  You forget that the first rule to match wins and keep state (which is on
>  by default in 7.0)
>  will make replies to match the state not the pass out rules.


   Yes, you're right, I'm sorry :) ENOTENOUGHCOFFEE :) However, I do
recall having seen the symptom once myself.

>
> >
>  >>> It's my configuration:
>  >>>
>  >>  >
>  >>  > set skip on lo0
>  >>  > scrub on xl0 reassemble tcp no-df random-id
>  >>  > scrub on xl1 reassemble tcp no-df random-id
>  >>  > scrub on dc0 reassemble tcp no-df random-id
>  >>  > nat on xl0 from 172.16.0.0/24 to any -> (xl0) static-port
>  >>  > rdr on dc0 inet proto tcp to port 80 -> 127.0.0.1 port 3128 round-robin
>  >>  > sticky-address
>  >>  > antispoof quick for {xl0,dc0,xl1}
>  >>  > block proto tcp from 172.16.0.0/24 to any port 3128
>  >>  > # Internal Traffic
>  >>  > pass in quick on dc0 from any to any
>  >>  > pass out quick on dc0 from any to any
>  >>  > # Outgoing
>  >>  > pass out on xl0 proto tcp all flags S/SA modulate state
>  >>  > pass out on xl0 proto { udp, icmp } all keep state
>  >>  > pass out on xl1 proto tcp all flags S/SA modulate state
>  >>  > pass out on xl1 proto { udp, icmp } all keep state
>  >>  > # Pass basic services
>  >>  > pass in quick on xl1 proto tcp from any to any port { 22, 21, 1194 } keep
>  >>  > state
>  >>  > pass in quick on xl0 proto tcp from any to any port { 22, 21, 1194 } keep
>  >>  > state
>  >>  > pass in on xl0 proto udp from any to any port 53
>  >>  > pass in on xl1 proto udp from any to any port 53
>  >>  > # Pass VPN
>  >>  > pass in quick on xl1 proto udp from any to port 1194 keep state
>  >>  > pass quick on tun0
>  >>  > # Source nat route
>  >>  > pass out log on xl0 route-to ( xl1 200.232.164.1 ) from xl1 to any
>  >>  > pass out on xl1 route-to ( xl0 201.83.16.1 ) from xl0 to any
>  >>  > # Close
>  >>  > block return-rst in log quick on xl0 inet proto tcp from any to any
>  >>  > block return-rst in log quick on xl1 inet proto tcp from any to any
>  >>  > block return-icmp in log quick on xl0 proto udp from any to any
>  >>  > block return-icmp in log quick on xl1 proto udp from any to any
>  >>  > block in quick on xl0 all
>  >>  > block in quick on xl1 all
>  >>  >
>  >>  > Best Regards,
>  >>  >
>  >>  > Wesley Gentine
>  >>  > _______________________________________________
>  >>  > freebsd-net@freebsd.org mailing list
>  >>  > http://lists.freebsd.org/mailman/listinfo/freebsd-net
>  >>  > To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"
>  >>  >
>  >>
>  >>
>  >> --
>  >>
>  >>  Best Wishes,
>  >>  Stefan Lambrev
>  >>  ICQ# 24134177
>  >>
>  >>
>  >>  _______________________________________________
>  >>  freebsd-net@freebsd.org mailing list
>  >>  http://lists.freebsd.org/mailman/listinfo/freebsd-net
>  >>  To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"
>  >>
>  >>
>  >
>  >
>  >
>
>  --
>
>  Best Wishes,
>  Stefan Lambrev
>  ICQ# 24134177
>
>


-- 
~/.signature: no such file or directory



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?ad79ad6b0803200722y51697e6eid0ea30f3f18d36c1>