aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/ip_vs.h
diff options
context:
space:
mode:
authorHannes Eder <heder@google.com>2010-07-23 06:48:52 -0400
committerPatrick McHardy <kaber@trash.net>2010-07-23 06:48:52 -0400
commit7f1c407579519e71a0dcadc05614fd98acec585e (patch)
tree623a63992113a539a3cd43031e58aad83f04bf34 /include/net/ip_vs.h
parent7b215ffc3885a38182d3d49ceb41d0a81c3e041a (diff)
IPVS: make FTP work with full NAT support
Use nf_conntrack/nf_nat code to do the packet mangling and the TCP sequence adjusting. The function 'ip_vs_skb_replace' is now dead code, so it is removed. To SNAT FTP, use something like: % iptables -t nat -A POSTROUTING -m ipvs --vaddr 192.168.100.30/32 \ --vport 21 -j SNAT --to-source 192.168.10.10 and for the data connections in passive mode: % iptables -t nat -A POSTROUTING -m ipvs --vaddr 192.168.100.30/32 \ --vportctl 21 -j SNAT --to-source 192.168.10.10 using '-m state --state RELATED' would also works. Make sure the kernel modules ip_vs_ftp, nf_conntrack_ftp, and nf_nat_ftp are loaded. [ up-port and minor fixes by Simon Horman <horms@verge.net.au> ] Signed-off-by: Hannes Eder <heder@google.com> Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: Patrick McHardy <kaber@trash.net>
Diffstat (limited to 'include/net/ip_vs.h')
-rw-r--r--include/net/ip_vs.h2
1 files changed, 0 insertions, 2 deletions
diff --git a/include/net/ip_vs.h b/include/net/ip_vs.h
index fe82b1e10a29..1f9e51180bdb 100644
--- a/include/net/ip_vs.h
+++ b/include/net/ip_vs.h
@@ -736,8 +736,6 @@ extern void ip_vs_app_inc_put(struct ip_vs_app *inc);
736 736
737extern int ip_vs_app_pkt_out(struct ip_vs_conn *, struct sk_buff *skb); 737extern int ip_vs_app_pkt_out(struct ip_vs_conn *, struct sk_buff *skb);
738extern int ip_vs_app_pkt_in(struct ip_vs_conn *, struct sk_buff *skb); 738extern int ip_vs_app_pkt_in(struct ip_vs_conn *, struct sk_buff *skb);
739extern int ip_vs_skb_replace(struct sk_buff *skb, gfp_t pri,
740 char *o_buf, int o_len, char *n_buf, int n_len);
741extern int ip_vs_app_init(void); 739extern int ip_vs_app_init(void);
742extern void ip_vs_app_cleanup(void); 740extern void ip_vs_app_cleanup(void);
743 741