All of lore.kernel.org
 help / color / mirror / Atom feed
From: JC <bikkit@gmail.com>
To: netfilter-devel@lists.netfilter.org
Subject: Approach on issue of multihoming
Date: Sat, 20 Aug 2005 04:29:22 -0700	[thread overview]
Message-ID: <a60102c3050820042944b0ecb8@mail.gmail.com> (raw)

I was hoping someone could possibly shed some light into this or at
least point me to the right direction... I hope you can forgive the
naivety of my questions.

I am trying to develop a kernel module level solution for dynamic host
multihoming. What that means is packets from an application, upon one
of the interfaces going down or another prerequisite met, are NATed to
another pre-defined interface (at least two present on a box). This
requires that I mangle packets from specific applications running on
the system -defined by their source port used- right in the stack and
basically changing the interface the packets are sent from.

Leaving aside the fact that this is going to break all connections
from applications that are not "clever" to adjust to that change and
have them all reset (the project includes the development of an API
that that applications can use to adjust), I understand that I have 2
options for doing this:

a) write a module that registers my mangling function with one of
the 5 netfilter hooks (the ROUTING one?), grab the interesting packets
identified by the application source port and change the source IP,
also making sure to do the opposite for the "relevant" incoming
packets the other way.

b) write a NAT helper module that handles the connection from the
start, and then having it NAT the packets of the application, changing
to the new source IP. This solution shows more promise, as it is more
readily capable of manipulating data in the connection, and it also
blends nicer with the iptables. My problem is, where does this NAT
helper module come? How do I insert into the system a helper module I
might implement? And how do I set it up for use?

I hope I can get some help over this issue, as it is more than
confussing me and at the moment I'm simply stuck as to how to move
forward.

regards,
JC

                 reply	other threads:[~2005-08-20 11:29 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=a60102c3050820042944b0ecb8@mail.gmail.com \
    --to=bikkit@gmail.com \
    --cc=netfilter-devel@lists.netfilter.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.