-
Notifications
You must be signed in to change notification settings - Fork 0
/
asTracer.py
29 lines (24 loc) · 936 Bytes
/
asTracer.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import pprint
import sys
from others import run_process, get_ip, make_request, gray, parse_response, mutate_dictionary, filter_dictionary
def main():
if len(sys.argv) != 2:
print('usage: asTracer [ip/host]')
print()
print('Author Matvey Novikov')
return
else:
res = {}
servers = ["whois.arin.net", "whois.afrinic.net", "whois.apnic.net", "whois.lacnic.net", "whois.ripe.net"]
print('Started: ' + '\n')
for line in run_process('tracert -d ' + sys.argv[1]):
ip = get_ip(line)
if ip != 'No ip':
print('\tworking with: ' + ip, end='\r')
res[ip] = []
for server in servers:
res[ip].append(parse_response(make_request(ip, server), server))
print('Done: ')
pprint.pprint(gray(filter_dictionary(mutate_dictionary(res))))
if __name__ == '__main__':
main()