#!/usr/bin/env python # -*- coding: cp1251 -*- # Простой сканер портов у определённого диапозона IP адресов. # created by inlanger import socket import ipaddr #Брать тут - http://code.google.com/p/ipaddr-py/ from Tkinter import * # Основная функция программы def Func(): a = int(ipaddr.IP(firstip.get())) b = int(ipaddr.IP(secondip.get())) port = portW.get() while a<=b: ipWithMask = ipaddr.IPv4(a) HOST=ipWithMask.ip_ext port=int(port) a=a+1 print "Connect to ",HOST," on ",port," port" sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) try: sock.connect((HOST, port)) sock.settimeout(1) result = sock.recv(1024) print "DONE !", result except: print "Fail..." continue sock.close() # Конец функции # Создание основных элементов формы window = Tk() window.title(u'Сканер портов') label = Label(window, text = u'Введите диапозон IP адресов для сканирования').grid(columnspan=4) # Первая строка для ввода IP firstip = Entry(window) firstip.insert(0, '91.203.4.26') firstip.grid(row=1, column=0) # Вторая строка для ввода IP secondip = Entry(window) secondip.insert(0, '91.203.5.26') secondip.grid(row=1, column=1) # Строка ввода порта portW = Entry(window, width=4) portW.insert(0, '110') portW.grid(row=1, column=2) # Кнопка button = Button(window, text = u'Начать сканирование', command=Func).grid(row=1, column=3) window.mainloop()