Я тестирую библиотеку с именем packetgen
на моей машине.Проблема не в самой библиотеке;Я пытаюсь внедрить один пакет в моей сети только для простого теста.Однако, когда я внедряю его, он вызывает ошибку:
Traceback (most recent call last):
3: from packet.rb:5:in `<main>'
2: from /home/COM-COM/.rvm/gems/ruby-2.5.1/gems/packetgen-2.8.6/lib /packetgen/packet.rb:240:in `to_w'
1: from /home/COM-COM/.rvm/gems/ruby-2.5.1/gems/packetgen-2.8.6/lib/ packetgen/header/eth.rb:95:in `to_w'
/home/COM_COM/.rvm/gems/ruby-2.5.1/gems/packetgen-2.8.6/lib/packetgen /header/eth.rb:95:in `open_live': wlp2s0: You don't have permission to capture on that device (socket: Operation not permitted) (RuntimeError)
Мне нужны привилегии суперпользователя для захвата или ввода пакетов в сети, но если я запускаю sudo 'ruby packet.rb'
, это вызывает и другую ошибку, потому что packetgen
не установлен на моей машине версии ruby.Я использую версию ruby, отличающуюся от предустановленной версии моей машины, благодаря RVM (Ruby Version Mananger).У кого-нибудь есть обходной путь или способ запустить эту программу без sudo?Спасибо!