Python内网扫描之-Scapy库
Scapy库
Tips:这个库不能够再windows平台使用
pip3 install scapy
主要使用了ARP,srp,Ether方法
Scapy是数据包制作,处理和分析套件。
伪装成领域特定语言的Python解释器。
#!/usr/bin/python3
#coding:utf-8
from scapy.all import srp, Ether, ARP
from time import *
def _otherScan():
IpScan = '192.168.20.1/24'
try:
ans, unans = srp(Ether(dst="FF:FF:FF:FF:FF:FF")/ARP(pdst=IpScan),timeout=2)
except Exception as e:
print(e)
else:
for send, rcv in ans:
ListMACAddr = rcv.sprintf("%Ether.src%---%ARP.psrc%")
print(ListMACAddr)
sleep(10)
_otherScan()
结构思想:
1. 导入Scapy库中的三个方法(ARP,Ether,srp);
2. 通过函数封装进行调用;
3. srp是二层传输,ARP则是三层传输;
4. try中的结构则是进行发送广播包查找内网IP地址及对应的mac地址;
5. except 判断是否有错误有的话就通过e输出错误
6. 通过else进行循环出内网中的在线主机和mac地址进行