kisesy
kisesy
@SeaHOH 这样也是会出现多扫IP的情况 举个例子,这个应该是好的结果 "1.9.22.0-255" "1.9.0.0/16" "1.9.22.0-255" "1.9.22.0/24" "1.9.22.0-255" "1.9.22.0-1.9.22.100" "1.9.22.0-1.9.22.255" "1.9.0.0/16" "3.3.3.0/24" "3.3.0.0/16" "3.3.3.0-255" "1.1.1.0/24" "1.9.0.0/16" "2001:db8::1/128" "127.0.0.0" "127.0.0.1" | | v [1.9.0.0/16 3.3.0.0/16 1.1.1.0/24 203.0.113.0/24 2001:db8::1/128, 127.0.0.0, 127.0.0.1]
@MeABc 会生成 192.168.1.1 192.168.1.2 192.168.1.3 192.168.1.4 192.168.1.5 192.168.1.6 192.168.1.7 192.168.1.8 192.168.1.9 192.168.1.10 192.168.2.1 192.168.2.2 192.168.2.3 192.168.2.4 192.168.2.5 192.168.2.6 192.168.2.7 192.168.2.8 192.168.2.9 192.168.2.10
@MeABc 这是别人想出来的,我把别人的代码抄来精简了一下 这是原代码 ```py try: from itertools import imap as map range = xrange except: from functools import reduce def expand(segment): if '-' in segment: start, end = map(int, segment.split('-'))...
@SeaHOH 我记的是会有多余,忘了,但是这算法挺复杂的吧,比如 把 '1.0.0.0/16' 和 '192.0.2.1/32' 合并
@SeaHOH 海哥说的我都懵B了,还是给个小例子吧 @MeABc 关于读取完IP段后,再 分解,合并,这些过程都会产生大量内存 而现在的算法是不会产生任何额外空间的
我写一写,为什么写成现在的算法
想用 quic 就用这个扫,不想用就用别的扫,就这么简单,所以......你的理解是对的
你说的不一定是这个问题 因为现在如果遇到非IP的,一般是会跳过的,你说你扫了一段时间,如果IP有问题是直接退出的 所以可能是IP数限制没有改,扫到100个就结束了,或者也确实是你说的情况,所以你最好发一下你扫的IP段
@tec1987 这个不错,可以试下,等有空吧
@tec1987 现在我还想给扫描加入扫描等级,比如 等级1 可以通过测试 quic 版本或者 ping一下,来简单确认 等级2 可以测试确实连接,并且证书正确 等级3 可以用 http 方式来确定确实是可用的 现在的方式是等级3和等级2的结合, ping 已经默认禁用了 以后可以默认为 2,这样扫起来快一点 而且我现在还想加入其他扫描方式比如 tls sni socks5 socks4 之类的,这些也都可以有不同的等级实现