如何进行网络分析
# -*- coding:utf-8 -*-
import sys
if len(sys.argv) != 2:
print "Usage: arping2tex <net>\n eg: arping2tex 192.168.1.0/24"
sys.exit(1)
from scapy.all import srp,Ether,ARP,conf
conf.verb=0
ans,unans=srp(Ether(dst="ff:ff:ff:ff:ff:ff")/ARP(pdst=sys.argv[1]),
timeout=2)
print r"\begin{tabular}{|l|l|}"
print r"\hline"
print r"MAC & IP\\"
print r"\hline"
for snd,rcv in ans:
print rcv.sprintf(r"%Ether.src% & %ARP.psrc%\\")
print r"\hline"
print r"\end{tabular}"
什么是网络分析
通过网络分析可以分析网络协议的运行过程,排除网络运行中出现的过程。
网络应用中,可以使用抓包进行网络分析。
对于通讯报文进行直接抓取不仅知道网络连接中出现的问题,
还可以通过数据来分析通讯协议
目前最为通用的网络分析工具是Wireshark软件,其基于抓包库libcap。
scapy也是基于libcap的交互式网络分析工具。