Метод "socket.bind" не работает в Python - PullRequest
0 голосов
/ 03 ноября 2018

Я написал эту программу на python3 для ввода пакетов через необработанный сокет.

import socket
import struct
import sys

try:
    raw_socket = socket.socket(socket.PF_PACKET, socket.SOCK_RAW, socket.htons(0x0800))
except socket.error as e:
    print("Error occurred while creating socket. Error code: " + e[0] + " Error message : " + e[1])
    sys.exit()

raw_socket.bind(('wlan0', socket.htons(0x0800)))
packet = struct.pack('!6s6s2s', '\xb8v?\x8b\xf5\xfe', 'l\x19\x8f\xe1j\x8c', '\x80\x00')
rawSocket.send(packet + 'Hello')

Но всякий раз, когда я запускаю программу, она показывает эту ошибку:

Traceback (most recent call last):
  File "rawSocketInjector.py", line 11, in <module>
    raw_socket.bind(('wlan0', socket.htons(0x0800)))
OSError: [Errno 19] No such device

Для этой строки кода:

raw_socket.bind(('wlan0', socket.htons(0x0800)))

Что я делаю не так?

...