### 📄 [中文](README.md) | 📄 [English](English.md) # ⚡ what this ? This is a scan integration interface. The bottom layer is scanned by capturing packets**Can quickly scan ports and hosts and complete tasks across network segments** ### 🤔 Support[Platform|Skill] + [x] Platform - [x] windows[10] - [ ] linux[ubuntu、kali] + [x] Skill - [x] Fingerprint Scan - [x] Async Scan - [x] Sync Scan - [x] Service Scan - [x] DNS Parse - [x] Trace Route - [x] ARP Spoofing # ✨ Features - async = ["async-io", "futures-lite", "futures"] - service = ["native-tls", "sync"] - os = [] - sync = [] - full = ["async", "sync", "os", "service"] - default = ["sync"] # 📖 Example ```toml [dependencies] e-libscanner = { version = "0.1", features = ["full"] } ``` - [Async_host_scan](examples/async_host_scan.rs) - [Async_port_scan](examples/async_port_scan.rs) - [Host_scan](examples/host_scan.rs) - [Port_scan](examples/port_scan.rs) - [Fingerprint_scan](examples/os.rs) - [Service_detection](examples/service_detection.rs) - [DNS parse](examples/dns.rs) - [Traceroute](examples/tracert.rs) - [Command api](examples/cmd_input.rs) ##### `command example` ``` e_libscanner -i 192.168.1.1-10 www.baidu.com --model Sync --scan Icmp --no-gui -- -AS ``` ## `💡!important:` ####There are three requirements for building on the windows system environment: You must use the rust version using the MSVC toolchain You must install [WinPcap]( https://www.winpcap.org/ )Or [npcap]( https://nmap.org/npcap/ )(using [WinPcap]( https://www.winpcap.org/ )Version 4.1.3) (if using [npcap]( https://nmap.org/npcap/ ), please make sure to use "in [WinPcap]( https://www.winpcap.org/ )Install [npcap] in API compatibility mode( https://nmap.org/npcap/ )”) You must put it in your bag. [WinPcap]( https://www.winpcap.org/ )The Lib in the developer package is located in the directory named Lib in the root directory of the repository. Alternatively, you can use any location listed in the% lib% / $env: lib environment variable. For the 64 bit toolchain, it is located in wpdpack / lib / x64 / packet. For the 32-bit toolchain, it is located in wpdpack / lib / packet.lib. ``` # 1.install npcap server https://npcap.com/dist/npcap-1.70.exe setx LIB E:\libs\LIB # download and decompression https://npcap.com/dist/npcap-sdk-1.13.zip # npcap-sdk-1.13\Lib\x64\Packet.lib put to E:\libs\LIB ``` # 🚀 fast running ``` # host/port scan cargo run --example host_scan cargo run --example port_scan # async scan cargo run --example async_host_scan --features="async" cargo run --example async_port_scan --features="async" # Fingerprint scan cargo run --example os --features="os" # Service Scan cargo run --example service_detection --features="service" # DNS Parse cargo run --example dns # Trace Route cargo run --example tracert ``` # 🦊 Applied Projects [E-NetScan](https://github.com/EternalNight996/e-netscan.git): The network scanning project (which supports both command line and cross platform graphical interface) is under development.. # 🔭 why need to e-libscanner? At first, I wanted to complete a cross network scanning project to help me complete some work. I referred to many open source projects, but these projects have some defects that do not meet my needs, so I have e-libscanner. (process host and port scanning, and support domain name resolution, route tracking, fingerprint scanning, service scanning, asynchronous scanning, scalability and more) The bottom layer is by calling [npcap]( https://nmap.org/npcap/ )And [WinPcap]( https://www.winpcap.org/ )Packet capture service; The service API is [libpnet]( https://github.com/libpnet/libpnet ); # 🙋 Reference items and materials ✨ [RustScan] https://github.com/RustScan/RustScan : Rustlike nmapscan ✨ [netscan] https://github.com/shellrow/netscan : Rust Network Scanner ✨ [libpnet](libpnet) https://github.com/libpnet/libpnet ● The background base of the interplatform network - mainly using captivity services ([npcap]) https://nmap.org/npcap/ with [WinPcap]( https://www.winpcap.org/ )