c - FreeBSD 以太网操作

标签 c perl networking freebsd ethernet

我需要一种方法来执行以下任务,假设我有一台带有 k(k 很大)个以太网接口(interface)的计算机。我想要一种方法来识别哪个标识符 (em0) 分配给了哪个物理接口(interface)。

我想到的唯一“简单”方法是使物理接口(interface)上的 LED 灯闪烁。

例如

etherblink em0

将在分配给 em0 的物理以太网接口(interface)上闪烁链接或事件 LED。

我知道在 Linux 上有 ethertool,但它不适用于 FreeBSD。 FreeBSD 上还有 LED 驱动,但只支持有限数量的以太网模块。

有什么想法吗?想过给接口(interface)绑定(bind)一个socket,然后写到socket,但是不行。

C 或 Perl

最佳答案

虽然我没有这样做,但是,根据 FreeBSD 手册,可以使用内核配置提示将特定的驱动程序节点绑定(bind)到特定的硬件 IRQ。参见 device.hints(5) 和 FreeBSD network setup查看如何定位每个以太网设备 IRQ。

关于c - FreeBSD 以太网操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8672182/

相关文章:

c - 在复合周期信号的周期开始处查找样本

c 守护进程运行时 shell 参数

arrays - 根据关键字将文件内容拆分为 2 个数组

perl - Perl 的 `foreach` 语句中括号的用途是什么?

arrays - 在多维数组中删除后不能有普通数组

linux - rsync 压缩及其工作原理

c - 变量或字段声明为空”和其他错误

cudaMemcpy 实际上并未复制任何内容

azure - Nginx 拒绝 ssh,被锁在外面

c++ - ASIO - 检测死连接