我已将其设置在我的sysctl.conf
:
net.netfilter.nf_conntrack_max=268435456
因为,这个境界16,777,216
达到的非常快。
另外,我还减少了超时:
net.ipv4.tcp_fin_timeout = 30
net.netfilter.nf_conntrack_tcp_timeout_established=54000
我正在尝试这样做:
./masscan 0.0.0.0/0 -p 80 --rate 500000 --exclude exclude.conf -oG output.txt
我想将利率从500,000
提高到5,000,000
。我有 100 mbps。
我正在尝试将速率从 更改100,000
为上限。
尽管如此,我的net.netfilter.nf_conntrack_count
成长并没有超过1,609,909
。剩余时间73小时20分钟,速率100k或500k,没关系。
其他设置:
net.core.rmem_default = 4194304
net.core.wmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_max = 4194304
net.ipv4.tcp_rmem = 4096 65536 4194304
net.ipv4.tcp_wmem = 4096 16384 4194304
看来还需要增加一些东西。看起来某个地方内存或记录字段不足。
如何找到瓶颈?
答案1
如果我理解正确的话,您似乎希望通过将每秒 160 万个数据包增加到--rate
5,000,000 个来突破限制。
据masscan作者介绍这个网站:
On Linux (no virtualization) it'll do 1.6 million packets-per-second.
By default, the rate is set to 100 packets/second. To increase the rate to a million use something like --rate 1000000.