Я пытаюсь открыть необработанный сокет и привязать к нему мой беспроводной интерфейс.Это код, который я использую:
//opening socket
if ((sockfd = socket(AF_PACKET, SOCK_RAW, htons(ETH_P_ALL))) == -1){
//if socket fails give error
perror("socket");
}
//binding socket to interface
if (setsockopt(sockfd, SOL_SOCKET, SO_BINDTODEVICE, "wlp0s19f2u3", 4) < 0)
perror("SIOCGIFHWBIND");
Но при компиляции и запуске с помощью sudo я получаю "SIOCGIFHWBIND: Нет такого устройства" .
Сначала я подумал, что это потому, что там я пропустил написание имени интерфейса, но мой вывод iwconfig:
wlp0s19f2u3 IEEE 802.11 Mode:Monitor Frequency:2.462 GHz Tx-Power=20 dBm
, и это не проблема с режимом монитора, потому что выполнение кода в то время как мойБеспроводная карта находится в управляемом режиме, выдает тот же вывод, и мне нужно, чтобы интерфейс был в режиме монитора.
Пожалуйста, помогите и хорошего дня!