public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "Sachin Shelar" <sachin.s@s7solutions.com>
To: linux-kernel@vger.kernel.org
Subject: kernel module acquiring virtual ip's
Date: Tue, 18 Apr 2006 15:44:58 +0530	[thread overview]
Message-ID: <ops76728o1ibd9oo@sachin> (raw)

Hi,

    I have a kernel module which "acquires" virtual ips ( not assigned to  
anyone in n/w )
and then respond to any future packets coming to this virtual ip.
    I am handling ARP, TCP, UDP protocols in my module.
To get the arp stuff working I handle all the ARP requests for virtual IP  
and reply to
them with my local hardware address. I can now receive all the packets  
destined to virtual IP.
    E.g Local IP is 192.168.1.2
        Virtual ip is 192.168.1.244 ( Not existing in network )

        I catch every arp request for .244 and reply with my mac. I can now
recive all IP packets ( handled in my netfilter hooks ) destined for .244.
According to the natting rules in my module I nat the packets for .244 and  
redirect them to
some listening port on 192.168.1.2
Also I handle all the outgoing packet from 192.168.1.2 and replace the  
source to 192.168.1.244
So that the client machine recives reply from virual IP, as expected.

         192.168.1.21[32774] -> 192.168.1.244[123]

                          Nat Destination   192.168.1.21[32774] ->  
192.168.1.2[23]

(Reply) 192.168.1.2[23] -> 192.168.1.21[32774]
                          Nat Source        192.168.1.244[123] ->  
192.168.1.21[32774].



    Module works perfectly and I can establish any tcp connection ( E.g  
telnet ) with a non exitsing
IP ( 192.168.1.244) from any machine in the network.

    Problem is :-
    I want the same behaviour from the module if I try to connect from the  
same machine (local machine )
to the virtual IP.

     E.g 192.168.1.2[32772] -> 192.168.1.244[123]

                         Nat Destination   192.168.1.2[32772] ->  
192.168.1.2[23]

***** But somehow this packet after natting is dropped be the kernel and  
never reaches 192.168.1.2[23]
       Is this because the source and destination ip of this packet is same  
?????

     Hoping to get good reponse for this loooong mail :)

Thanks,
Sachin


                 reply	other threads:[~2006-04-18 10:11 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=ops76728o1ibd9oo@sachin \
    --to=sachin.s@s7solutions.com \
    --cc=linux-kernel@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