Linux中网络接口简介
来源:互联网 发布:地理绘图软件 编辑:程序博客网 时间:2024/06/05 02:50
原文地址:http://soft.chinabyte.com/os/327/11628327.shtml
1、linux的网络接口之扫盲
(1)网络接口的命名
这里并不存在一定的命名规范,但网络接口名字的定义一般都是要有意义的。例如:
eth0: ethernet的简写,一般用于以太网接口。
wifi0:wifi是无线局域网,因此wifi0一般指无线网络接口。
ath0: Atheros的简写,一般指Atheros芯片所包含的无线网络接口。
lo: local的简写,一般指本地环回接口。
(2)网络接口如何工作
网络接口是用来发送和接受数据包的基本设备。
系统中的所有网络接口组成一个链状结构,应用层程序使用时按名称调用。
每个网络接口在linux系统中对应于一个struct net_device结构体,包含name,mac,mask,mtu…信息。
每个硬件网卡(一个MAC)对应一个网络接口,其工作完全由相应的驱动程序控制。
(3)虚拟网络接口
虚拟网络接口的应用范围非常广泛。最着名的当属“lo”了,基本上每个linux系统都有这个接口。
虚拟网络接口并不真实地从外界接收和发送数据包,而是在系统内部接收和发送数据包,因此虚拟网络接口不需要驱动程序。
虚拟网络接口和真实存在的网络接口在使用上是一致的。
(4)网络接口的创建
硬件网卡的网络接口由驱动程序创建。而虚拟的网络接口由系统创建或通过应用层程序创建。
驱动中创建网络接口的函数是:register_netdev(struct net_device *)或者register_netdevice(struct net_device *)。
这两个函数的区别是:register_netdev(…)会自动生成以”eth”作为打头名称的接口,而register_netdevice(…)需要提前指定接口名称.事实上,register_netdev(…)也是通过调用register_netdevice(…)实现的。
2、LINUX中的lo(回环接口)
1) 什么是LO接口?
在LINUX系统中,除了网络接口eth0,还可以有别的接口,比如lo(本地环路接口)。
2) LO接口的作用是什么?
假如包是由一个本地进程为另一个本地进程产生的, 它们将通过外出链的’lo’接口,然后返回进入链的’lo’接口.具体参考包过滤器的相关内容。
- Linux中网络接口简介
- linux中网络接口名称限制
- linux网络socket接口
- Linux 网络接口
- linux网络socket 接口
- linux网络接口配置文件
- linux网络接口详解
- 2.3 Linux网络接口
- Linux网络编程简介
- linux无线驱动接口简介
- linux无线驱动接口简介
- Session接口中方法简介
- activex中IDispatchEx接口简介
- Spring中Ordered接口简介
- Spring中Ordered接口简介
- Spring中Ordered接口简介
- Linux网络接口源码导读
- Linux网络接口源码导读
- 使用了两个<context:property-placeholder>出现后面的加载不到properties或者报错的问题
- 真机运行,程序一打开就报异常解决办法
- [Leetcode] 468. Validate IP Address 解题报告
- 【Scikit-Learn 中文文档】线性和二次判别分析
- java报错
- Linux中网络接口简介
- Cloudera的CDH和Apache的Hadoop的区别
- 数组的逆序
- MVC工作原理
- js如何获取css样式
- 静态变量和实例变量的区别?
- myeclipse重装后项目后与svn资源库断开问题解决
- session存放在数据库里面的优点
- android不使用推送,在桌面图标上显示消息数量