diff --git a/ip_sacaner/scan_run.cpp b/ip_sacaner/scan_run.cpp index 799e601..acac439 100644 --- a/ip_sacaner/scan_run.cpp +++ b/ip_sacaner/scan_run.cpp @@ -42,12 +42,12 @@ void dispatch::run() { QStringList str_ip_list = ip_list.split("\n"); QStringList str_ips_list; - + QStringList str_list_more; + quint32 ipa,ipb; QStringList str_port_list = port_list.split("\n"); QStringList str_ports_list; - quint32 ips_num=0; - quint32 ports_num=0; + quint64 ips_num=0; QRegExp ex_ipv4 ("^((25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(25[0-5]|2[0-4]\\d|[01]?\\d\\d?)$"); QRegExp ex_ipv4_more("^((25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(25[0-5]|2[0-4]\\d|[01]?\\d\\d?)-((25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(25[0-5]|2[0-4]\\d|[01]?\\d\\d?)$"); QRegExp ex_ipv4_more2("^((25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(25[0-5]|2[0-4]\\d|[01]?\\d\\d?)/(0?[0-9]|1[0-9]|2[0-9]|3[0-2])$"); @@ -60,30 +60,73 @@ void dispatch::run() if(ex_ipv4.exactMatch(str_ip_list.at(i))) { qDebug() << str_ip_list.at(i)<<" is ipv4"; + str_ips_list.append(str_ip_list.at(i)); + ips_num+=1; }else if(ex_ipv4_more.exactMatch(str_ip_list.at(i))) { - qDebug() << str_ip_list.at(i)<<" is ipv4_more"; + str_list_more=str_ip_list.at(i).split("-"); + ipa=ipv4str_to_int(str_list_more.at(0)); + ipb=ipv4str_to_int(str_list_more.at(1)); + if(ipa>ipb) + { + for(;ipb<=ipa;ipb++) + { + str_ips_list.append(ipv4int_to_str(ipb)); + ips_num+=1; + } + }else if(ipb>ipa) + { + for(;ipa<=ipb;ipa++) + { + str_ips_list.append(ipv4int_to_str(ipa)); + ips_num+=1; + } + }else//= + { + str_ips_list.append(ipv4int_to_str(ipa)); + ips_num+=1; + } + }else if(ex_ipv4_more2.exactMatch(str_ip_list.at(i))) { qDebug() << str_ip_list.at(i)<<" is ipv4_more2"; + str_list_more=str_ip_list.at(i).split("/"); + ipa=ipv4str_to_int(str_list_more.at(0)); + ipb=qPow(2,(32-str_list_more.at(1).toInt())); + for(quint32 ii=0;ii //socket #include #include - +#include class trytry : public QThread diff --git a/ip_sacaner/widget.cpp b/ip_sacaner/widget.cpp index b9ff289..8eed728 100644 --- a/ip_sacaner/widget.cpp +++ b/ip_sacaner/widget.cpp @@ -70,6 +70,102 @@ Widget::Widget(QWidget *parent) });//'scan button pass' + + connect(ui->pushButton_2, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_2->text()); + }); + connect(ui->pushButton_3, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_3->text()); + }); + connect(ui->pushButton_4, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_4->text()); + }); + connect(ui->pushButton_5, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_5->text()); + }); + connect(ui->pushButton_6, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText("\n"); + }); + connect(ui->pushButton_7, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_7->text()); + }); + connect(ui->pushButton_8, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_8->text()); + }); + connect(ui->pushButton_9, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_9->text()); + }); + connect(ui->pushButton_10, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_10->text()); + }); + connect(ui->pushButton_11, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_11->text()); + }); + connect(ui->pushButton_12, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_12->text()); + }); + connect(ui->pushButton_13, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_13->text()); + }); + connect(ui->pushButton_14, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_14->text()); + }); + connect(ui->pushButton_15, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_15->text()); + }); + connect(ui->pushButton_16, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_16->text()); + }); + connect(ui->pushButton_17, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_17->text()); + }); + connect(ui->pushButton_18, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_18->text()); + }); + connect(ui->pushButton_19, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_19->text()); + }); + connect(ui->pushButton_21, &QPushButton::pressed, [=]() + { + + ui->IP_list->clear(); + }); } Widget::~Widget() diff --git a/ip_sacaner/widget.ui b/ip_sacaner/widget.ui index 9d59167..def0707 100644 --- a/ip_sacaner/widget.ui +++ b/ip_sacaner/widget.ui @@ -44,9 +44,9 @@ - 420 + 480 220 - 171 + 111 41 @@ -68,8 +68,8 @@ - 350 - 230 + 240 + 240 61 22 @@ -87,8 +87,8 @@ - 320 - 230 + 240 + 220 31 16 @@ -101,7 +101,7 @@ 10 - 230 + 240 53 16 @@ -113,8 +113,8 @@ - 70 - 230 + 60 + 240 91 24 @@ -128,12 +128,12 @@ 10 20 - 141 + 171 71 - IP范围 + IP范围 总数不能超过2147483647 127.0.0.1 0.0.0.0-255.255.255.255 domain.com @@ -155,8 +155,8 @@ domain.com - 200 - 230 + 170 + 220 41 16 @@ -168,8 +168,8 @@ domain.com - 250 - 230 + 170 + 240 61 22 @@ -189,7 +189,7 @@ domain.com 10 100 - 471 + 301 111 @@ -197,13 +197,273 @@ domain.com - 490 + 483 100 - 104 + 111 111 + + + + 320 + 100 + 61 + 23 + + + + 192.168. + + + + + + 320 + 130 + 61 + 23 + + + + 169.254. + + + + + + 320 + 160 + 31 + 23 + + + + 10. + + + + + + 350 + 160 + 31 + 23 + + + + 100. + + + + + + 320 + 190 + 31 + 23 + + + + ENT + + + + + + 350 + 190 + 31 + 23 + + + + / + + + + + + 380 + 190 + 31 + 23 + + + + . + + + + + + 440 + 190 + 31 + 23 + + + + - + + + + + + 410 + 190 + 31 + 23 + + + + 0 + + + + + + 380 + 100 + 31 + 23 + + + + 1 + + + + + + 410 + 100 + 31 + 23 + + + + 2 + + + + + + 440 + 100 + 31 + 23 + + + + 3 + + + + + + 380 + 130 + 31 + 23 + + + + 4 + + + + + + 410 + 130 + 31 + 23 + + + + 5 + + + + + + 440 + 130 + 31 + 23 + + + + 6 + + + + + + 380 + 160 + 31 + 23 + + + + 7 + + + + + + 410 + 160 + 31 + 23 + + + + 8 + + + + + + 440 + 160 + 31 + 23 + + + + 9 + + + + + + 380 + 220 + 91 + 41 + + + + Ping Olny + + + + + + 320 + 220 + 51 + 41 + + + + clear + +