Linux虚拟网络设备及其通俗理解

Linux有哪些虚拟网络设备?

  • TUN/TAP
  • Veth
  • Bridge
  • vlan

它们分别是干什么用的?

  • TUN:连接协议栈和用户空间程序
  • TAP:虚拟网卡,作为虚拟机后端网卡
  • Veth:连接两个网络空间
  • Bridge:连接多个网络接口
  • Vlan:隔离广播域

它们有何作用?

  • 容器的网络连接
  • 虚拟机的网络连接
  • VPN
  • 灵活性

如何使用?

Linux中对这些网络设备的操作工具/命令:

  • brctl: 网桥操作
  • vconfig: vlan操作
  • ip link: veth操作
  • tunctl: TUN/Tap 操作
  • ifconfig: 网卡配置

在内核的实现?

  • TUN:modinfo tun
  • TAP:modinfo tap
  • Bridge:modinfo bridge
  • Veth: modinfo veth
  • VLAN: modinfo 8021q

怎么实现的?

  • 一看处于网络第几层
  • 二看支持什么协议
    Linux虚拟网络设备及其通俗理解_第1张图片
    二层设备带MAC地址,三层设备带IP地址。

对网络设备的通俗理解

对照物流行业:

  1. 应用程序 => 用户
  2. 数据帧 => 包裹
  3. 协议栈 => 打包/解包
  4. 网卡 => 快递柜
  5. 交换机/网桥 => 物流集散中心
  6. 路由器 => 海关/主干转运中心
  7. VPN => 快递公司
  8. 链路层 => 运输公司
  9. 传输介质 => 公路/铁路/水路/航路
  10. 打包员 => TUN
  11. 网络代理 => 货代

网络数据的收发与物流快递包裹收发相对应:
数据收发与快递收发对应关系

你可能感兴趣的:(虚拟化,linux,网络,服务器)