免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 9650 | 回复: 14
打印 上一主题 下一主题

[网络管理] 多IP进行SNAT的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-09-29 11:51 |只看该作者 |倒序浏览
net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 900
net.ipv4.netfilter.ip_conntrack_buckets = 1048576
net.ipv4.netfilter.ip_conntrack_count = 56567
net.ipv4.netfilter.ip_conntrack_max = 1048576


由于网络规模大,有几千台机器吧。高峰时期ip_conntrack_count 可以到20万。使用6个公网地址做SNAT.

/sbin/iptables -t nat -A POSTROUTING -s 0.0.0.0/0 -j SNAT --to-source xxx.xxx.xxx.1-xxx.xxx.xxx.6

现在使用起来没有任何问题。使用中发现公网地址是随机的,浏览器刷新一次就会换一个。

统计/proc/net/ip_conntrack ,6个公网IP 利用均摊。

现在的问题是登陆论坛 邮箱等会不断提示未登陆,无法通过验证。估计是服务器端发现来源ip改变的缘故。

不知道能否给小弟些建议?

论坛徽章:
0
2 [报告]
发表于 2006-09-29 12:29 |只看该作者
针对特定的 destination 使用固定的 IP 去 SNAT

论坛徽章:
0
3 [报告]
发表于 2006-09-29 12:42 |只看该作者
谢谢大哥回复,这个工作也太大了。
好多使用diz 的论坛存在这个问题,21cn的邮箱也有这个问题。
也想过不同的来源使用不同的公网IP进行NAT,只因为经过两层NAT,有几个来源地址本身就是下一级的NAT,不好分。

不知道能不能netfiter处理snat的时候,使用完一个IP再去使用下一个IP,不出现随机 平均使用的问题。

[ 本帖最后由 wchun 于 2006-9-29 12:47 编辑 ]

论坛徽章:
0
4 [报告]
发表于 2006-09-29 13:17 |只看该作者
我有个问题
为何要浪费那么多 IP 去 SNAT 呢?是怕 sock 不够用吗?

论坛徽章:
0
5 [报告]
发表于 2006-09-29 13:39 |只看该作者
最理想的情况,只有65535个端口可以使用,我定义的是1024-65500,当conntrack超过65535-的时候.发现.丢包严重无法上网。
一个IP显然是不够的。
也不知道是不是我的理解不对,请指教。

论坛徽章:
0
6 [报告]
发表于 2006-09-29 13:47 |只看该作者
1、“我定义的是1024-65500” 没必要,画蛇添足多此一举
2、可以将网络分成若干的段,分段做固定 IP 的 SNAT,这样出了问题也相对好追究

论坛徽章:
0
7 [报告]
发表于 2006-09-29 13:52 |只看该作者
谢谢回复,我进行的NAT是在核心层,下面其中两个区域已经是通过NAT上来的,相当于是两次NAT。

论坛徽章:
0
8 [报告]
发表于 2006-09-29 13:57 |只看该作者
^_^
默认状态,cat /proc/sys/net/ipv4/ip_local_port_range
1024    65000
想再增加500,呵呵。

论坛徽章:
0
9 [报告]
发表于 2006-09-30 05:32 |只看该作者
60000个端口,表示你可以向同一个ip地址同一个端口发起60000个连接,还不够吗?
你这种情况,请考虑使用iptables SAME target,不知道为什么这么重要的东西man里面没有

SAME v1.2.11 options:
--to <ipaddr>-<ipaddr>
                                Addresses to map source to.
                                 May be specified more than
                                  once for multiple ranges.
--nodst
                                Don't use destination-ip in
                                           source selection

论坛徽章:
0
10 [报告]
发表于 2006-09-30 09:44 |只看该作者
60000个端口,表示你可以向同一个ip地址同一个端口发起60000个连接?

好像不是这样子的吧?

NAT必须要建立一个会话表来对应数据包与内部真实主机的对应关系.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP