Python:PermissionError:[Errno 1]不允许操作

时间:2017-01-20 00:09:22

标签: python

import socket

import struct

import textwrap

def main():
    conn = socket.socket(socket.AF_PACKET, socket.SOCK_RAW, socket.ntohs(3))

    while True:
      raw_data, addr = conn.recvfrom(65535)
      dest_mac, src_mac, eth_proto, data = ethernet_frame(raw_data)
      print('\nEthernet Frame:')
      print('Destination: {}, Source: {}, Protocol: {}'.format(dest_mac, src_mac, eth_proto))

# Unpack ethernet frame
def ethernet_frame(data):
    dest_mac, src_mac, proto = struct.unpack('! 6s 6s H', data[:14])
    return get_mac_addr(dest_mac), get_mac_addr(src_mac), socket.htons(proto), data[14:]

# Return Formatted MAC Address (i.e AA: BB: CC: DD: EE: FF)

def get_mac_addr(bytes_addr):
    bytes_str = map('{:02x}'.format, bytes_addr)
    return ':'.join(bytes_str).upper()

main()

这是我的代码。感谢

0 个答案:

没有答案