Debian11运行Rust程序masscanned时出现数据链路通道创建错误
解决OpenStack Debian 11实例中运行masscanned时的"No such device"错误
问题场景
在OpenStack创建的Debian 11实例上,以root身份执行masscanned命令:
./masscanned --iface ens3 --self-ip-list myIP --remote-ip-deny-file /root/ignored_ips --format logfmt -v
触发panic错误,核心提示:
thread 'main' panicked at 'An error occurred when creating the datalink channel: No such device (os error 19)', src/masscanned.rs:92:19
对应代码为masscanned.rs第92行,程序尝试创建数据链路通道时,找不到指定的网络设备。
解决步骤
确认真实网络接口名称
OpenStack实例的网络接口命名不一定是ens3,Debian 11可能采用eth0或其他命名。执行以下命令查看所有可用接口:ip link show找到带有有效IP地址的活跃接口名称。
修正命令中的接口参数
将命令里的--iface ens3替换为查到的真实接口名称,例如接口是eth0时,命令改为:./masscanned --iface eth0 --self-ip-list myIP --remote-ip-deny-file /root/ignored_ips --format logfmt -v检查接口状态(若仍报错)
确认接口已启用:ip link set <你的接口名称> up执行
ip addr show <你的接口名称>验证接口是否有正确的IP配置。补全底层依赖
masscanned依赖libpcap库,若系统未安装,执行以下命令安装:apt update && apt install -y libpcap-dev若从源码编译masscanned,重新编译确保依赖正确链接。
内容的提问来源于stack exchange,提问作者Gilles Fournel
相关产品推荐
相关产品推荐

