Replying again now that I've got a lot of testing done. I'm heading home soon
so just posting an update and will test the last few things tomorrow. I'll
also try to submit a broken up patch tomorrow so that specific changes and
reasoning can be discussed more easily.
On Saturday 12 April 2008 18:07:59 Julian Anastasov wrote:
> - all forwarding methods can be tested on LAN, even LVS-TUN
Haven't been able to test LVS-TUN yet, but I can't see any reason why it
shouldn't work. Will test tomorrow morning.
> - forwarding of related ICMP traffic (ICMP errors) in both directions,
> for all methods
Tested.
> - ICMP generation to both sides (client and real server): when there is no
> real server, when skb is longer than PMTU.
I tested the no real server case. How can i test the skb-too-large case? I
tried changing the MTU on the director's interface on the real-server side,
but traffic continued to pass fine...
> - scheduling by nfmark
Tested.
> - firewall: at least basic packet fields matching
iptables -t filter -A FORWARD -d 192.168.0.7 -i eth0 -j ACCEPT
iptables -t filter -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -t filter -P FORWARD REJECT
where 192.168.0.7 is the VIP I'm testing with worked fine. Pretty much any
firewall rules should work fine as I've moved LVS hooks to the points of
entry/exit of the netfilter flow.
> - ip_vs_ftp testing (LVS-NAT) when netfilter ftp module is in
> effect: test if double NAT happens resulting in broken packets (TCP
> sequence numbers or payload) when payload is changed if IP:PORT
> strings in FTP commands have different length (VIP and RIP).
Tested plain LVS-NAT as well as with SNAT and DNAT. Surprisingly, it works
even with the above conntrack-based filter in place. I think that indicates
that double NAT is happening (else RELATED wouldn't match) but with the order
that hooks are called things don't get screwed up - I think. I'll investigate
this a little further.
> > * IP_VS_CONN_F_BYPASS - what is this?
>
> IP_VS_CONN_F_BYPASS is used for transparent proxy setups when
> real server (cache server) is not present and we should forward the
> traffic to original destination. The idea is request still to be served.
> In such case IPVS traffic uses the original destination instead of real
> server.
Not tested yet. I assume I just need to add a real server with the same
IP/port as the virtual server?
> There are some issues that prevent IPVS to benefit from Netfilter
> connection tracking:
>
> - Netfilter's NAT and routing are not in single place (hook), difficult to
> handle LVS-DR
LVS-DR with real server as a client using SNAT... Will test this tomorrow too.
> - Netfilter can re-route sometimes (eg. after mangle), it can cause
> properly routed LVS-DR traffic to fail.
I don't understand exactly what you mean by this. It could only happen if the
user sets rules that causes it to happen right?
> - Double NAT for ip_vs_ftp
Addressed above.
--
Jason Stubbs <j.stubbs@xxxxxxxxxxxxxxx>
LINKTHINK INC.
東京都渋谷区桜ヶ丘町22-14 N.E.S S棟 3F
TEL 03-5728-4772 FAX 03-5728-4773
--
To unsubscribe from this list: send the line "unsubscribe lvs-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
|