wlan1 显示为奇怪的字符

wlan1 显示为奇怪的字符

当我执行 ifconfig 时,它显示 wlan1 为

wlanx00c0ca8476b6

这到底是什么鬼东西?

注意:这显示为我的 USB wifi 适配器。我的内部 wlan0 显示正常。

注意:我进行了升级(Kali Linux 2016)。字符编码是否混乱?我不知道如何修复它。之前没有显示这个。它曾经是 wlan1。:-(

我甚至无法使用我的适配器,因为当我这样做时:

airmon-ng wlx00c0ca8476b6

我得到:

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

因此,除了下面建议的评论说它是“适配器的 MAC 地址”之外,肯定还有问题。它不应该显示 MAC 地址。它应该显示接口名称。

答案1

是的,这是实际的接口名称,而不是编码问题。这些“奇怪的字符”是字母和数字。

  • 通用的en*wl*格式(例如enp1s0wlp2s0)来自systemd“持久接口名称”,它本身受到 Fedora 早期的bios 设备名称功能。它根据硬件功能设置接口名称 -enp*或者wlp*描述 PCI 总线/插槽,enu*或者wlu*描述 USB 端口;enx*或者wlx*描述 MAC 地址。

    这对于具有多个网络接口的系统很有用,因为它们是按照没有特定顺序进行检测的,因此有可能eth0eth1不时交换位置。

  • 但是,systemd 默认不启用基于 MAC 地址的名称——这是一个Debian-特定添加,仅适用于 USB 连接接口。(这些接口无法从默认的 systemd 命名中受益,因为 USB 路径……实际上并不是那么持久,也不是那么可预测。)

    虽然 Debian 配置在内部使用 systemd-udev 生成的名称,但从技术上讲,它是作为单独的 udev 规则文件实现的,并且不遵循完全相同的配置。但它确实遵循net.ifnames=0(见下文)。

  • 我猜失败的原因airmon-ng是名字是太长– Linux 上的接口名称限制为 16 个字节,因此 airmon-ng 具有没有更多空间在新监视接口的名称后附加“mon”。

    不过,您实际上并不需要带有现代驱动程序的“airmon-ng”——它只是一个用于统一几种不同类型的接口设置(现代和古代)的 shell 脚本。

完全禁用重命名,启动时net.ifnames=0内核参数,例如将其添加到/etc/default/grub。 (还有其他方法,但它们涉及太多配置编辑,并且将来可能会发生变化。)

wlan*重启后您将恢复标准名称。

手动创建监控接口, 使用iw

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

稍后将其删除:

iw mon0 interface del

答案2

如果你使用的是 Raspberry Pi,那么解决这个问题的办法很简单,就是禁用可预测的网络接口名称

sudo raspi-config

打开网络选项打开网络接口名称并禁用可预测的网络接口名称

就这样

相关内容