LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

RE: Final routing problem

To: "LinuxVirtualServer.org users mailing list." <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
Subject: RE: Final routing problem
From: "Francois JEANMOUGIN" <Francois.JEANMOUGIN@xxxxxxxxxxxxxxxxx>
Date: Thu, 23 Oct 2003 14:53:18 +0200

> [snip]
> 
> That looks good. I assume that you have set up the real servers
> to accept traffic for the VIP somehow, alias on the loopback
> interface,
> funky policy routing, whatever.

I have those ips on the realserver :

1: lo: <LOOPBACK,UP> mtu 16436 qdisc noqueue
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 brd 127.255.255.255 scope host lo
    inet VIP/24 scope global lo:0
2: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast qlen 100
    link/ether 00:0b:cd:83:4c:14 brd ff:ff:ff:ff:ff:ff
3: eth1: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 100
    link/ether 00:0b:cd:82:70:d1 brd ff:ff:ff:ff:ff:ff
    inet 1.1.1.1/24 brd 1.1.1.255 scope global eth1
4: eth2: <BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc pfifo_fast qlen 100
    link/ether 00:0b:cd:83:72:a2 brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.191/16 brd 10.0.255.255 scope global eth2
    inet 172.16.1.1/24 brd 172.16.1.255 scope global eth2:1

So, the VIP is lo:0. hmmmm. As I read it, it should be a /32 not /24, no?

> Adding the -e option to tcpdump might shed some more light on things
> as the destintion MAC address should change to that of the real server
> even though the IP header stays the same.
> Also, do you see any icmp traffic being sent to the CIP?
> On the real server, does netstat -an show the conection in
> any state at all?

OK, here it is :

DIRECTOR :
/sbin/ipvsadm -Lcn
IPVS connection entries
pro expire state       source             virtual            destination
TCP 00:55  SYN_RECV    194.250.185.138:39643 194.250.185.189:22 172.16.1.1:22

REALSERVER :

No ICMP packet going out from eth1 (but, can tcpdump show outgoing packets ?

No connection at any state shown in netstat -an

Ingoing connexion :
/usr/sbin/tcpdump -n -e ip host 194.250.185.189 -i eth2
tcpdump: listening on eth2
14:39:42.959993 0:2:a5:eb:13:ee 0:b:cd:83:72:a2 ip 74: CIP.39643 > VIP.ssh: S 
410754343:410754343(0) win 5840 <mss 1460,sackOK,timestamp 50208403 
0,nop,wscale 0> (DF) [tos 0x10]

So, let's see. 
0:2:a5:eb:13:ee is the mac address of the IIP from the director (172.16.1.254).
0:b:cd:83:72:a2 is clearly the mac address of eth2 on the realserver.

So what did I miss? I really think that for a reason or another, the VIP is not 
considered local. I will try to force a /32 on the lo:0 interface.

Any idea ?

François.

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