Hi,
I just patched ip_vs.c in ip_vs_tunnel_xmit()
iph->daddr = rt->rt_dst;
iph->saddr = rt->rt_src;
- iph->ttl = old_iph_ttl;
+ iph->ttl = old_iph->ttl<20 ? old_iph->ttl+16 :
old_iph->ttl;
iph->tot_len = htons(skb->len);
iph->id = htons(ip_id_count++);
to increase the ttl of IPIP packets, because some of our real servers are
15-17 hops away from the director, and many users have a default ttl of
32 (thanks $MAJOR_OS_AND_SOFTWARE_COMPANY), so they were not able to reach
our RS if themselves were more than 16 hops from the director. I guess
this violates a couple of RFCs but it seems to work.
comments?
GG
|