ubuntu 下 开启无线网卡的monitor mode

本文介绍如何在Ubuntu系统中将无线网卡切换至Monitor模式以捕获无线信号。文章详细描述了四个步骤:检查网卡支持模式、关闭网卡、设置Monitor模式及启用网卡,并解决了操作过程中可能遇到的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

monitor 模式是什么?

数据包通过无线电信号来传输,monitor模式下的网卡可以接收所有它可以接收的无线电信号并进行解析,不仅仅限于它所在的无线局域网。

那么ubuntu下的网卡的monitor模式如何开启呢?

第一步

首先使用命令查看当前的无线网卡支持哪些mode:

iw list

命令结果为 supported interface modes 有两个:

  • managed
  • monitor
Wiphy phy1
    max # scan SSIDs: 4
    max scan IEs length: 2257 bytes
    Retry short limit: 7
    Retry long limit: 4
    Coverage class: 0 (up to 0m)
    Supported Ciphers:
        * WEP40 (00-0f-ac:1)
        * WEP104 (00-0f-ac:5)
        * TKIP (00-0f-ac:2)
        * CCMP (00-0f-ac:4)
        * 00-0f-ac:10
        * GCMP (00-0f-ac:8)
        * 00-0f-ac:9
    Available Antennas: TX 0 RX 0
    Supported interface modes:
         * managed
         * monitor
    Band 1:
        Capabilities: 0x172
            HT20/HT40
            Static SM Power Save
            RX Greenfield
            RX HT20 SGI
            RX HT40 SGI
            RX STBC 1-stream
            Max AMSDU length: 3839 bytes
            No DSSS/CCK HT40
        Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
        Minimum RX AMPDU time spacing: 2 usec (0x04)
        HT TX/RX MCS rate indexes supported: 0-7, 32
        Bitrates (non-HT):
            * 1.0 Mbps (short preamble supported)
            * 2.0 Mbps (short preamble supported)
            * 5.5 Mbps (short preamble supported)
            * 11.0 Mbps (short preamble supported)
            * 6.0 Mbps
            * 9.0 Mbps
            * 12.0 Mbps
            * 18.0 Mbps
            * 24.0 Mbps
            * 36.0 Mbps
            * 48.0 Mbps
            * 54.0 Mbps
        Frequencies:
            * 2412 MHz [1] (20.0 dBm)
            * 2417 MHz [2] (20.0 dBm)
            * 2422 MHz [3] (20.0 dBm)
            * 2427 MHz [4] (20.0 dBm)
            * 2432 MHz [5] (20.0 dBm)
            * 2437 MHz [6] (20.0 dBm)
            * 2442 MHz [7] (20.0 dBm)
            * 2447 MHz [8] (20.0 dBm)
            * 2452 MHz [9] (20.0 dBm)
            * 2457 MHz [10] (20.0 dBm)
            * 2462 MHz [11] (20.0 dBm)
            * 2467 MHz [12] (20.0 dBm) (no IR)
            * 2472 MHz [13] (20.0 dBm)
    Supported commands:
         * new_interface
         * set_interface
         * new_key
         * start_ap
         * new_station
         * new_mpath
         * set_mesh_config
         * set_bss
         * authenticate
         * associate
         * deauthenticate
         * disassociate
         * join_ibss
         * join_mesh
         * set_tx_bitrate_mask
         * frame
         * frame_wait_cancel
         * set_wiphy_netns
         * set_channel
         * set_wds_peer
         * probe_client
         * set_noack_map
         * register_beacons
         * start_p2p_device
         * set_mcast_rate
         * Unknown command (104)
         * connect
         * disconnect
    Supported TX frame types:
         * IBSS: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
         * managed: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
         * AP: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
         * AP/VLAN: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
         * mesh point: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
         * P2P-client: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
         * P2P-GO: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
         * P2P-device: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
    Supported RX frame types:
         * IBSS: 0x40 0xb0 0xc0 0xd0
         * managed: 0x40 0xd0
         * AP: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
         * AP/VLAN: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
         * mesh point: 0xb0 0xc0 0xd0
         * P2P-client: 0x40 0xd0
         * P2P-GO: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
         * P2P-device: 0x40 0xd0
    software interface modes (can always be added):
         * monitor
    interface combinations are not supported
    HT Capability overrides:
         * MCS: ff ff ff ff ff ff ff ff ff ff
         * maximum A-MSDU length
         * supported channel width
         * short GI for 40 MHz
         * max A-MPDU length exponent
         * min MPDU start spacing
    Device supports TX status socket option.
    Device supports HT-IBSS.
    Device supports SAE with AUTHENTICATE command
    Device supports low priority scan.
    Device supports scan flush.
    Device supports AP scan.
    Device supports per-vif TX power setting
    Driver supports a userspace MPM
    Device supports active monitor (which will ACK incoming frames)

第二步

使用 iwconfig 可以查看网卡信息,其中可以看到我的网卡目前的模式是managed(而且名字很奇怪,不知道是否和使用虚拟机有关)

ens33     no wireless extensions.

lo        no wireless extensions.

wlx30b49e22ab5b  IEEE 802.11bgn  ESSID:off/any  
          Mode:Managed  Access Point: Not-Associated   Tx-Power=20 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:off

第三步

关闭这个无线网卡,然后将模式改为monitor,(不关闭则无法更改mode)

sudo ifdown (your device name)

这个我遇到了第一个问题,就是使用设备名无法识别,于是我选择从GUI中关闭。

成功的关闭后,就可以执行下一个命令:

sudo iwconfig wlx30b49e22ab5b mode moniter

然后我使用命令 sudo ifconfig (your device name)up 开启设备,返现不成功!返回为:

SIOCSIFFLAGS: Operation not possible due to RF-kill

这是因为你的网卡 是 Soft-blocking,我直接写出适合我的解决方法,原文中要重启电脑,但是我没有重启之前就成功了。

论坛原文

sudo rfkill unblock wifi
sudo rfkill unblock all

然后上一个设置mode的命令就可以成功的执行了

第四步

此时使用命令:

sudo ifconfig (your device name)up

可以成功的开启网卡

再一次使用 iwconfig 命令查看的时候,发现:

ens33     no wireless extensions.

lo        no wireless extensions.

wlx30b49e22ab5b  IEEE 802.11bgn  Mode:Monitor  Frequency:2.412 GHz  Tx-Power=20 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:off

网卡的模式已经变成了 Monitor 模式!

使用wireshark检测,使用此接口成功抓包!

### 如何在Ubuntu 20.04配置Bond网卡 #### 创建并编辑Netplan配置文件 为了配置bond模式,在`/etc/netplan/`目录下创建一个新的YAML配置文件,命名为`bond0.yaml`。可以使用任何文本编辑器完成此操作;例如,通过命令行工具vi来实现: ```bash sudo vi /etc/netplan/bond0.yaml ``` #### YAML配置示例:Bond Mode 4 (802.3ad) 对于希望采用Layer3+4的负载均衡策略即mode4的情况,下面是一个具体的配置实例[^1]。 ```yaml network: version: 2 bonds: bond0: interfaces: - eth0 - eth1 parameters: mode: 802.3ad lacp-rate: fast mii-monitor-interval: 100 addresses: - 192.168.1.100/24 gateway4: 192.168.1.1 nameservers: search: [mydomain, otherdomain] addresses: [8.8.8.8, 8.8.4.4] ``` 上述配置定义了一个名为`bond0`的绑定接口,并指定了两个物理网络接口(`eth0`, `eth1`)作为其成员。参数部分设置了工作模式为`802.3ad`(等同于mode4),并且启用了快速LACP心跳检测以及每秒一次链路状态监测。 #### 应用新的网络设置 保存更改后的配置文件之后,应用这些改动使新设定立即生效: ```bash sudo netplan apply ``` 这会重新加载所有的网络配置并将它们应用于当前运行环境中。 #### 验证配置成功与否 最后一步是验证bonding是否正常运作。可以通过查看系统日志或者直接查询bond设备的状态来进行确认: ```bash cat /proc/net/bonding/bond0 ``` 这条指令能够展示有关`bond0`的信息,包括它所连接的实际NICs及其当前状况。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值