Когда я делаю ifconfig, он показывает wlan1 как

wlanx00c0ca8476b6

Что в мире этот бред?

Примечание: это отображается для моего адаптера USB Wi-Fi. Мой внутренний wlan0 обнаруживается нормально.

Примечание: я сделал обновление (Kali Linux 2016). Кодировка символов испорчена? Я не знаю, как это исправить. Это не показывало это раньше. Раньше был wlan1. :-(

Я также не могу даже использовать свой адаптер, потому что, когда я делаю:

airmon-ng wlx00c0ca8476b6

Я получил:

ERROR adding monitor mode interface: command failed: Invalid argument (-22)

Таким образом, должна быть проблема, отличная от предложенного ниже комментария о том, что это «MAC-адрес адаптера». Он не должен показывать MAC-адрес. Предполагается показать имя интерфейса.

1 ответ1

0

Да, это фактическое имя интерфейса, а не проблема кодировки. Эти "странные символы" - это буквы и цифры.

  • Общий формат en* или wl* (например, enp1s0 или wlp2s0) происходит от systemd "постоянных имен интерфейсов", который сам вдохновлен более ранней функцией Fedora biosdevname . Он устанавливает имена интерфейсов на основе аппаратных возможностей - enp* или wlp* опишет шину PCI / слот, enu* или wlu* опишут порт USB; enx* или wlx* описывают MAC-адрес.

    Это полезно в системах с несколькими сетевыми интерфейсами, так как они обнаруживаются в произвольном порядке, поэтому у eth0 или eth1 от времени можно менять местами.

  • Однако systemd по умолчанию не включает имена на основе MAC-адресов - это специфичное для Debian дополнение, которое применяется только к интерфейсам, подключенным через USB. (Они не могут извлечь выгоду из именования systemd по умолчанию, поскольку USB-пути… на самом деле не такие постоянные и предсказуемые.)

    Хотя конфигурация Debian использует имена, сгенерированные systemd-udev, внутренне, она технически реализована как отдельный файл правил udev и не соответствует точно той же конфигурации. Это делает net.ifnames=0 (см. Ниже).

  • Я предполагаю, что причина airmon-ng , что имя слишком длинное - имена интерфейсов в Linux ограничены 16 байтами, поэтому у airmon-ng больше нет места для добавления слова "mon" к имени интерфейса нового монитора.

    Тем не менее, вам не нужно "airmon-ng" с современными драйверами - это всего лишь сценарий оболочки, объединяющий несколько различных видов настройки интерфейса (современный и древний).

Чтобы полностью отключить переименование, загрузитесь с параметром ядра net.ifnames=0, например, добавьте его в /etc/default/grub . (Существуют и другие методы, но они требуют слишком много редактирования конфигурации и могут измениться в будущем.)

Это должно вернуть вам стандартные имена wlan* после перезагрузки.

Чтобы создать интерфейс монитора вручную, используйте iw:

iw phy0 interface add mon0 type monitor
ip link set mon0 up

Позже удалите его:

iw mon0 interface del

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .