네트워크 검색 | 경로 추적 | TCP 및 UDP 포트 스캐너
이 프로그램은 로컬 시스템에 존재하는 모든 사용 가능한 인터페이스를 나열하고 Scapy를 사용하여 로컬 시스템의 비가상 인터페이스 각각을 통해 액세스할 수 있는 로컬 시스템의 LAN 내의 모든 온라인 시스템을 식별합니다. 이를 달성하기 위해 이 프로그램은 ARP 패킷을 캡슐화하는 이더넷 프레임을 생성합니다. 이더넷 프레임에는 브로드캐스트 주소로 설정된 대상 주소가 있는 반면, ARP 패킷에는 CIDR 표기법과 함께 로컬 호스트의 서브넷 주소가 있습니다. 마지막으로 Scapy는 서브넷의 모든 IP 주소로 브로드캐스트되는 ARP 패킷 목록을 생성하고 응답을 로컬 호스트로 보내는 온라인 시스템의 MAC 및 IP 주소를 인쇄합니다.
이 경로 추적 프로그램은 사용자로부터 대상 IP 주소 또는 호스트 이름을 받아들이고 소스와 대상 사이에 있는 모든 중개 시스템의 IP 주소 또는 가능한 호스트 이름을 식별합니다. 먼저 이 도구는 사용자가 IP 주소나 호스트 이름을 입력했는지 확인하고 그에 따라 해당 호스트 이름이나 IP 주소를 찾습니다. 다음으로, 임의의 높은 번호의 소스 포트와 함께 33434 - 33464 범위의 임의의 대상 포트를 사용하여 UDP 패킷을 캡슐화하는 IP 데이터그램을 생성합니다. IP 대상 주소는 사용자가 직접 제공하거나 Scapy를 통해 사용자가 제공한 호스트 이름을 사용하여 얻습니다. 최대 홉은 20으로 설정하고 TTL은 현재 홉 수에 따라 증가하므로 경로 내에서 20 홉 이하의 거리에 있는 모든 중간 머신을 검색할 수 있습니다. 마지막으로 한 홉에서 다음 홉으로 패킷을 보내고 받고 응답 패킷에 있는 호스트 이름과 IP 주소를 보고합니다. 예상 시간 초과인 3초 내에 패킷이 승인되지 않으면 해당 패킷이 한 번 더 전송됩니다. 그렇지 않으면 '*'가 인쇄됩니다. 프로그램은 대상으로부터 패킷이 대상에 도달했고 대상 포트가 더 이상 열려 있지 않음을 나타내는 ICMP 포트 연결 불가 메시지(유형 3)를 수신하는 즉시 중지됩니다.
usage: ./networkdiscovery.py [-h] [--version]
Network Discovery
optional arguments:
-h, --help show this help message and exit
--version Show Program's Version Number and Exit
usage: ./traceroute.py [-h] [--version] [--target TARGET]
Traceroute
optional arguments:
-h, --help show this help message and exit
--version Show Program's Version Number and Exit
--target TARGET Hostname or IP
usage: ./portscanner.py [-h] [--version] [--target TARGET] [--port PORT] [--tcp | --udp] [--verbose]
Port Scanner
optional arguments:
-h, --help show this help message and exit
--version Show Program's Version Number and Exit
--target TARGET Hostname or IP to scan
--port PORT Port [X] or Port Range [X-Y] to scan
--tcp TCP port scan (mutually exclusive with --udp)
--udp UDP port scan (mutually exclusive with --tcp)
--verbose Verbose output (Print all ports, not just open ports)
MIT 라이센스에 따라 배포됩니다.