构建一台大容量的NAT服务器

构建一台大容量的NAT服务器

文章提交:guest

1.前言
本文档主要描述如何利用Linux构建一台能力比较强的NAT服务器,并发连接数大约16万,流量200M-300M,如果你需要一个流量更高的NAT设备,请考虑购买专业厂商的设备。

2.许可协议
本文的许可协议遵循GNU Free Document License。协议的具体内容请参见http://www.gnu.org/copyleft/fdl.html。在遵循GNU Free Document License的基础上,可以自由地转载或发行本文,但请保留本文的完整性。

3.准备工作
CentOS 4.6光盘一套(4张CD)

PC服务器一台,P4 CPU,速度越快越好,256M内存(有没听错?没错! 256M内存就够了,如果资金充裕,可以用512M;如果你用1G内存,那叫浪费),2G或以上的硬盘(可以用CF电子盘)

两个高性能千兆网卡,到目前为止,我测试过几种网卡,Intel的PCI-X服务器网卡,Intel的PCI服务器网卡,Marvell PCI-E,3COM,前面三种网卡都不错,反而是3COM的网卡不行。

网卡最好用两个不同的接口,我现在用的主板,通常都是一张PCI-X网卡,一张PCI-E网卡,这样能避免内部接口速度影响转发效率

4.安装
首先安装CentOS,如果考虑编译内核,安装时记住要安装开发工具,因为要调整系统内核模块的一些参数,要编译系统模块。安装时要注意,不要建立交换区,切记!!!原因后面解释
安装完成后,运行setup,在system service中将不需要用的程序全部停止,基本上只需要保留ssh,iptables,network,snmpd,syslog几个,设置完后重新启动服务器。
编辑/etc/sysctl.conf,查找行“net.ipv4.ip_forward = 0”,然后将这行按下面的内容进行更改,原文件中没有的内容请自己添加
引用:
# Controls IP packet forwarding
net.ipv4.ip_forward = 1
net.ipv4.netfilter.ip_conntrack_max = 262144
net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 300
net.ipv4.route.max_size=2097152
net.ipv4.tcp_window_scaling=1
kernel.shmmax=268435456
kernel.shmall=268435456
强,学习!