linux中的网卡驱动函数probe的具体作用。

linux中的网卡驱动函数probe的具体作用。,第1张

probe在设备驱动被注册到内核中的时候,被总线型驱动调用。总线驱动类似于用轮训方法探测总线上的所有设备,将设备的识别型信息和关键数据结构 (pci ids, usb ids, i2c ids and etc.)传递给probe函数,probe就会识别是否是自己负责驱动的设备,并负责完成该设备的初始化 *** 作。

当Linux网卡端口断开时,系统会发出一个“netlink”消息,这个消息会被内核的网络堆栈捕获,然后会调用网络设备驱动程序的net_device_notifier函数。这个函数会检测网络设备的状态,如果网络设备的状态发生变化,它会向系统发出一个事件,用来通知系统网络设备的状态发生了变化。在这种情况下,当网卡端口断开时,系统会发出一个“NETDEV_DOWN”事件,用来通知系统网络设备的状态发生了变化。

一、Linux网络属性配置

1.Linux主机接入到网络方式

IP/NETMASK:实现本地网络通信

路由(网关):可以进行跨网络通信

DNS服务器地址:基于主机名的通信,Linux可以有三个DNS地址

当第一个地址本身挂了,才会查找其备用地址;若第一个地址无法解析则停止

2.网络属性配置方式

(1)静态指定

1)命令方式

ifcfg系列命令:

ifconfig:配置IP,NETMASK

route:配置路由相关信息

netstat:状态及统计数据查看

iiproute2系列命令:

ip OBJECT:

addr:地址和掩码;

link:接口

route:路由

ss:状态及统计数据查看

CentOS 7:nm(Network Manager)家族

nmcli:命令行工具

nmtui:text window 工具

hostname/hostnamectl:主机名配置

2) 配置文件:

RedHat及相关发行版:/etc/sysconfig/network-scripts/ifcfg-NETCARD_NAME

DNS服务器指定配置文件:/etc/resolv.conf

本地主机名配置文件:/etc/sysconfig/network

注:命令配置能及时生效,但时关闭当前进程之后配置失效,为一次性配置方式

通过配置文件配置网络属性,无法立即生效,需要重启服务、重新加载配置文件或者重启进程

(2)动态分配:依赖于本地网络中有DHCP服务

DHCP:Dynamic Host Configure Procotol, 动态主机配置协议,此时不能固定IP地址

3.网络接口命名

(1)传统命名

以太网:eth#,例如eth0, eth1, …

PPP网络:ppp#, 例如,ppp0, ppp1, …

(2)可预测命名方案(CentOS 7)

支持多种不同的命名机制,根据Fireware, 拓扑结构等信息自动配置

1) Firmware或BIOS为主板上集成的设备提供的索引信息可用,则根据此索引进行命名,如eno1,eno2, …

2) Firmware或BIOS为PCI-E扩展槽所提供的索引信息可用,且可预测,则根据此索引进行命名,如ens1, ens2, …

3) 如果硬件接口的物理位置信息可用,则根据此信息命名,如enp2s0, …

4) 如果用户显式定义,也可根据MAC地址命名,例如eno16777736(十六进制MAC), …

5)上述均不可用,则仍使用传统方式命名;

(3)命名格式的组成

en:ethernet,表示因特网网卡接口

wl:wlan,表示无线网网卡接口

ww:wwan,Wireless Wide Area Network,表示无线广域网网卡

(4)名称类型:

o<index>:集成设备的设备索引号;

s<slot>:扩展槽的索引号;

x<MAC>:基于MAC地址的命名;

p<bus>s<slot>:基于总线及槽的拓扑结构进行命名;


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/7112384.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-01
下一篇2023-04-01

发表评论

登录后才能评论

评论列表(0条)

    保存