Пишу сканер сети на питоне , возникает ошибка при попытке засканить ip`шники из сети (192.168.1.1/24), но когда сканю только один ip все работает идеально, как можно исправить данную ошибку подскажите пожалуйста.
код скрипта :
код ошибки :
не правильно работают конкретно методы show , но скрипт отправляет пакеты, не могу понять почему не хочет отображать содержимое пакетов..
код скрипта :
Код:
#!/usr/bin/env python
import scapy.all as scapy
def scan(ip):
arp_request = scapy.ARP(pdst=ip)
arp_request.show()
broadcast = scapy.Ether(dst="ff:ff:ff:ff:ff:ff")
broadcast.show()
arp_request_broadcast = broadcast / arp_request
print(arp_request_broadcast.summary())
arp_request_broadcast.show()
scan("192.168.1.1/24")
код ошибки :
Код:
root@kali:~/PycharmProjects/network_scaner# python --version
Python 2.7.18
root@kali:~/PycharmProjects/network_scaner#
root@kali:~/PycharmProjects/network_scaner# pip --version
pip 20.0.2 from /usr/local/lib/python2.7/dist-packages/pip (python 2.7)
root@kali:~/PycharmProjects/network_scaner#
root@kali:~/PycharmProjects/network_scaner# python network_scaner.py
/usr/local/lib/python2.7/dist-packages/scapy/config.py:384: CryptographyDeprecationWarning: Python 2 is no longer supported by the Python core team. Support for it is now deprecated in cryptography, and will be removed in a future release.
import cryptography
Traceback (most recent call last):
File "network_scaner.py", line 15, in <module>
scan("192.168.1.1/24")
File "network_scaner.py", line 7, in scan
arp_request.show()
File "/usr/local/lib/python2.7/dist-packages/scapy/packet.py", line 1261, in show
return self._show_or_dump(dump, indent, lvl, label_lvl)
File "/usr/local/lib/python2.7/dist-packages/scapy/packet.py", line 1235, in _show_or_dump
reprval = f.i2repr(self, fvalue)
File "/usr/local/lib/python2.7/dist-packages/scapy/fields.py", line 376, in i2repr
return fld.i2repr(pkt, val)
File "/usr/local/lib/python2.7/dist-packages/scapy/fields.py", line 502, in i2repr
x = self.i2h(pkt, x)
File "/usr/local/lib/python2.7/dist-packages/scapy/layers/l2.py", line 136, in i2h
iff = self.getif(pkt)
File "/usr/local/lib/python2.7/dist-packages/scapy/layers/l2.py", line 132, in <lambda>
self.getif = (lambda pkt: pkt.route()[0]) if getif is None else getif
File "/usr/local/lib/python2.7/dist-packages/scapy/layers/l2.py", line 400, in route
fld, dst = fld._find_fld_pkt_val(self, dst)
File "/usr/local/lib/python2.7/dist-packages/scapy/fields.py", line 313, in _find_fld_pkt_val
if val == dflts_pkt[self.name] and self.name not in pkt.fields:
File "/usr/local/lib/python2.7/dist-packages/scapy/base_classes.py", line 133, in __eq__
p2, nm2 = self._parse_net(other)
File "/usr/local/lib/python2.7/dist-packages/scapy/base_classes.py", line 99, in _parse_net
tmp = net.split('/') + ["32"]
AttributeError: 'NoneType' object has no attribute 'split'
root@kali:~/PycharmProjects/network_scaner#
не правильно работают конкретно методы show , но скрипт отправляет пакеты, не могу понять почему не хочет отображать содержимое пакетов..
Последнее редактирование: