Tot*_*tor 13 freebsd networking kernel api pfsense
我注意到根据网卡的品牌,接口名称有所不同(我想取决于驱动程序)。
确切地说,在 pfSense 下,我无法将 ALTQ 与链路聚合 (LAG) 虚拟接口一起使用。
由于缺乏适当的抽象层,这是 BSD 内部限制吗?
为什么 *BSD 为网络接口使用驱动程序特定名称?
这只是历史的选择。名称中的字母来自与卡通信的驱动程序,因此如果两个单独的接口碰巧使用相同的驱动程序,它们将是相同的。
它确实有一个实际的好处:在 BSD 上,网络驱动程序在第 4 节中有自己的手册页。因此,dc(4)
告诉您有关控制dc0
网络适配器的 DEC 21143 驱动程序的信息。
您也可以在 BSD Unix 的其他部分看到这一点,例如硬盘。
由于缺乏适当的抽象层,这是 BSD 内部限制吗?
不。
就其价值而言,Linux 正朝着类似的道路前进。随着网络变得越来越复杂,以太网适配器的简单命名规则的日子正在消失。
使用通用名称或驱动程序特定名称的选择与任何驱动程序限制无关。
这主要是一种化妆品选择。使用通用名称的优点是可以隐藏几乎总是不相关的信息——网络接口就是网络接口,无论是谁制造的。设备的功能取决于确切的型号及其配置,而不取决于正在使用的驱动程序。特定名称的好处是对管理员而言:如果错误消息提到eth0
(好吧,哪一个是 0,哪一个是 1),它比它提到wlan0
(啊,那是 wifi 接口)或bcm0
(啊,那是Broadcom 接口)。
在 FreeBSD 上,网络设置操作通过调用ioctl
Unix 套接字来工作。该 ioctl 由通用网络代码处理,并在 ioctl 调用时向下传递到相关驱动程序。
我不知道 ALTQ 如何与链路聚合交互。确保使用最新版本的 FreeBSD,因为这以前不起作用,但现在可以了。
归档时间: |
|
查看次数: |
2071 次 |
最近记录: |