linux TUN 虚拟网卡设备
来源:互联网 发布:海康130万网络摄像机 编辑:程序博客网 时间:2024/04/29 15:08
[网络虚拟化技术(二): TUN/TAP MACVLAN MACVTAP] https://blog.kghost.info/2013/03/27/linux-network-tun/
TUN 设备是一种虚拟网络设备,通过此设备,程序可以方便得模拟网络行为。先来看看物理设备是如何工作的:
From right to left
wf1
所有物理网卡收到的包会交给内核的 Network Stack 处理,然后通过 Socket API 通知给用户程序。下面看看 TUN 的工作方式:
From right to left
普通的网卡通过网线收发数据包,但是 TUN 设备通过一个文件收发数据包。所有对这个文件的写操作会通过 TUN 设备转换成一个数据包送给内核;当内核发送一个包给 TUN 设备时,通过读这个文件可以拿到包的内容。
如果我们使用 TUN 设备搭建一个基于 UDP VPN,那么整个处理过程就是这样:
From right to left
TUN 设备是一种虚拟网络设备,通过此设备,程序可以方便得模拟网络行为。先来看看物理设备是如何工作的:
From right to left
wf1
所有物理网卡收到的包会交给内核的 Network Stack 处理,然后通过 Socket API 通知给用户程序。下面看看 TUN 的工作方式:
From right to left
wf2
普通的网卡通过网线收发数据包,但是 TUN 设备通过一个文件收发数据包。所有对这个文件的写操作会通过 TUN 设备转换成一个数据包送给内核;当内核发送一个包给 TUN 设备时,通过读这个文件可以拿到包的内容。
如果我们使用 TUN 设备搭建一个基于 UDP VPN,那么整个处理过程就是这样:
From right to left
wf3
数据包会通过内核网络栈两次。但是经过 App 的处理后,数据包可能已经加密,并且原有的 ip 头被封装在 udp 内部,所以第二次通过网络栈内核看到的是截然不同的网络包。
0 0
- linux TUN 虚拟网卡设备
- linux TUN 虚拟网卡设备
- LINUX 虚拟网卡tun例子
- Linux虚拟网卡TUN/TAP
- Linux虚拟网卡TUN/TAP
- LINUX 虚拟网卡tun例子
- LINUX 虚拟网卡tun例子
- linux TUN/TAP虚拟网卡
- 虚拟网卡TUN/TAP设备使用实例
- 虚拟网卡TUN/TAP设备使用实例
- tun/tap虚拟网卡
- tun/tap虚拟网卡
- linux下实现虚拟网卡TAP/TUN例子
- linux下实现虚拟网卡TAP/TUN例子
- LINUX 虚拟网卡tun例子——修改
- linux下TUN/TAP虚拟网卡的使用
- linux下TUN或TAP虚拟网卡的使用
- linux下实现虚拟网卡TAP/TUN例子
- Linux下制作动态库与静态库
- 344. Reverse String*
- 让你的TextView字体跳动起来
- 【剑指offer】跳台阶问题
- 计算机结构
- linux TUN 虚拟网卡设备
- 基于Hadoop生态圈的数据仓库实践 —— 进阶技术(十四)
- 机器学习(二)广义线性模型:逻辑回归与Softmax分类
- 友盟微博failed to find provider info for com.sina.weibo.sdkprovider
- 3-2、java.util.List
- Sublime Text 3 python 配置
- 3-3、java.util.Set
- 3-4、java.util.Queue
- SQL IN 子查询返回多个值