[Realtek sdk-3.4.14b]RTL8197FH修复 /proc/conenat为1时相同的 LANIP+Port 访问具有不同外部端口的不同 wan 服务器问题

修改代码ipt_CONENAT.c

修复 conenat=1 时相同的 LAN ip+port 访问具有不同外部端口的不同 wan 服务器

--- a/rtl819x/linux-3.10/net/ipv4/netfilter/ipt_CONENAT.c
+++ b/rtl819x/linux-3.10/net/ipv4/netfilter/ipt_CONENAT.c
 exp_src_cmp(const struct nf_conntrack_expect * exp,
 	    const struct nf_conntrack_tuple * tp)
 {
 	if(expectcount > 0){
 		for(tmpport=0; (tmpport<=expectcount)&&(newport<=65535); tmpport++,newport++){
-			tuple.dst.u.udp.port=newport;		
+			tuple.dst.u.udp.port = htons(newport);
 			exp = __nf_ct_expect_find_bysave(net, &tuple, &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple);
			if(exp)
 				break;
 		}
 	}
 
@@ -644,7 +654,7 @@

猜你喜欢

转载自blog.csdn.net/wgl307293845/article/details/121282954