今天在BSD版看到有兄弟问,就翻出老早以前玩ipfilter时的资料,找到了方法,特共享出来:
修改/sys/contrib/ipfilter/netinet/ip_nat.h,把里面的LARGE_NAT前面的注释去掉,改为#define LARGE_NAT
加大NAT_TABLE_SZ和NAT_TABLE_MAX,RDR_SIZE和NAT_SIZE等
加大NAT_TABLE_SZ和NAT_TABLE_MAX,RDR_SIZE和NAT_SIZE等
NAT_TABLE_MAX最大值为1800000,180万,不过我没实测,BSD版有兄弟发贴说过他达到过的。
修改/sys/contrib/ipfilter/netinet/ip_state.h
IPSTATE_SIZE 64997
IPSTATE_MAX 45497
IP_STATE_MAX=IPSTATE_SIZE*0.7左右,注意都要是质数,根据实际情况修改。
修改/sys/contrib/ipfilter/netinet/ip_state.h
IPSTATE_SIZE 64997
IPSTATE_MAX 45497
IP_STATE_MAX=IPSTATE_SIZE*0.7左右,注意都要是质数,根据实际情况修改。
实测结果如下:
freebsd-pix# ipnat -l | wc -l
148408
我统计了一下,网内一共在线1800台主机,最大的一台主机的转换数有4007条,服务器是IBM的X345,cpu至强2G,1G内存,淘汰下来的老机器了。
28 processes: 1 running, 25 sleeping, 2 stopped
CPU states: 0.0% user, 0.0% nice, 0.5% system, 49.5% interrupt, 50.0% idle
Mem: 11M Active, 9840K Inact, 106M Wired, 9680K Buf, 870M Free
Swap: 2023M Total, 2023M Free
148408
我统计了一下,网内一共在线1800台主机,最大的一台主机的转换数有4007条,服务器是IBM的X345,cpu至强2G,1G内存,淘汰下来的老机器了。
28 processes: 1 running, 25 sleeping, 2 stopped
CPU states: 0.0% user, 0.0% nice, 0.5% system, 49.5% interrupt, 50.0% idle
Mem: 11M Active, 9840K Inact, 106M Wired, 9680K Buf, 870M Free
Swap: 2023M Total, 2023M Free
