LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: LVS-NAT two nic / two network problem

To: Joseph Mack <mack.joseph@xxxxxxx>
Subject: Re: LVS-NAT two nic / two network problem
Cc: lvs-users@xxxxxxxxxxxxxxxxxxxxxx, Roberto Nibali <ratz@xxxxxx>, <jlobascher@xxxxxxxxxxxxx>
From: Julian Anastasov <ja@xxxxxx>
Date: Thu, 21 Mar 2002 22:52:31 +0000 (GMT)
        Hello,

On Thu, 21 Mar 2002, Joseph Mack wrote:

> > My problem is that if I tcpdump both interfaces on the director and then
> > send a request from the client no packets come out eth0:1.
>
> I should get this straight, but I don't know whether LVS grabs
> the packets before tcpdump gets a chance to see them.
> tcpdump may not be helpful on the director - it might
> be better to look on the realserver.

        The fact is that all packet readers are treated equally,
all they receive a skb with the right to touch the skb structure,
after cloning it they can even read the data and after copy they
can obtain a copied data which they can damage. tcpdump is a
reader, LVS is a reader and sometimes writer. LVS copies the
packet before IP header and data alternation. If nothing is
changed, the packet is not copied. Such issues are explained here:

http://www.linuxvirtualserver.org/~julian/LVS.txt

> Anyone,
>
>       For the HOWTO, where does LVS grab it's packets in the
> Netfilter diagram for 2.2 and 2.4 and where does it reinject them

        LVS does not reinject the packet, it is on the main
packet path. The other readers usually receive the packets
enqueued in socket.

> on the way out? Where does tcpdump get its packets? Is it different
> for VS-DR and VS-NAT?

        There is a little difference. For DR we need only read
access.

>       Just for completeness, where does NAT step in for 2.2 and 2.4?

        Joe, RTFM :)))

http://www.linuxvirtualserver.org/Joseph.Mack/HOWTO/LVS-HOWTO-19.html#ss19.12

>       To help I've included diagrams from Marsh's
> book on Policy Routing

        diagrams almost correct

> Joe

Regards

--
Julian Anastasov <ja@xxxxxx>



<Prev in Thread] Current Thread [Next in Thread>