-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Description
Hi, thanks for the great work on RustScan. I’m referring to the previous pull requests #661 and #761. I’d like to reopen the discussion around supporting input like 1-22,661-669,8888 for port ranges.
In practice, when using RustScan either via CLI or as a library, it's quite common to specify ports using a format like 1-22,661-669,8888, especially when scanning common top ports. For example, a typical top 100 or top 1000 port list may include ranges and individual ports like:
21,22,23,25,53,67,68,80,110,111,139,143,161,389,443,445,465,512,513,514,873, 993,995,1080,1000,1352,1433,1521,1723,2049,2181,2375,3306,3389,4848,5000, 5001,5432,5900,5632,5900,5989,6379,6666,7001,7002,8000,8001,8009,8010,8069, 8080,8083,8086,8081,8088,8089,8443,8888,9900,9200,9300,9999,10621,11211, 27017,27018,66,81,457,1100,1241,1434,1944,2301,3128,4000,4001,4002,4100, 5800,5801,5802,6346,6347,30821,1090,1098,1099,4444,11099,47001,47002,10999, 7000-7004,8000-8003,9000-9003,9503,7070,7071,45000,45001,8686,9012,50500, 11111,4786,5555,5556,8880,8983,8383,4990,8500,6066
When this list includes ranges (like 7000-7004), it's not currently possible to pass them directly to RustScan in a user-friendly way. Users must extract and separate the ranges manually, which is especially cumbersome with larger lists like top 1000.
Why this matters
- Many common port dictionaries or scan profiles use the
1-22,80,443,8080-8090style. - When using RustScan programmatically, parsing and splitting these manually reduces efficiency and increases code complexity.
- Adding support for this notation would greatly improve usability and flexibility for both CLI users and developers using the RustScan crate.
Would it be possible to natively support this range notation?
Thanks again!