Linux网络硬件配置全解析
1. 网络硬件基础概念
在Linux系统中,要理解网络硬件的工作原理,首先得了解几个关键概念:物理设备、设备驱动和接口。
-物理设备:像以太网、FDDI或令牌环网卡这类硬件,是插在PC插槽里、布满各种小芯片的电路板,这就是所谓的物理设备。
-设备驱动:为了让网络卡能在Linux内核中正常使用,需要特定的设备驱动。Linux支持多种类型的网络接口卡驱动,如ISA、PCI、MCA、EISA、并行端口、PCMCIA,以及较新的USB接口卡驱动。以以太网网卡为例,驱动要能和网卡上的逻辑电路通信,能向网卡发送命令和数据,同时接收网卡传来的数据。在IBM风格的个人计算机中,这种通信通过I/O地址或内存传输实现。通常,内核在启动时会尝试自动检测网卡位置,这就是自动探测,但有些廉价或非标准克隆的网卡可能无法被自动检测到。此外,还需关注中断请求线(IRQ),硬件组件在需要处理某些情况时会通过IRQ中断内核。
-接口:内核通过接口来访问网络硬件,接口提供了一套抽象的功能,如发送或接收数据报。在许多类Unix操作系统中,网络接口以特殊设备文件的形式存在于/dev/目录下。而Linux的接口名在内核中定义,并非/dev目录下的设备文件。接口名的分配通常取决于设备的配置顺序,例如,第一块以太网网卡会被命名为eth0,第二块为eth1;SLIP接口则是动态分配的。