您的位置:首页 > 理论基础 > 计算机网络

【华为云技术分享】《跟唐老师学习云网络》 - TUN/TAP网线

2020-03-09 22:38 866 查看

介绍TUN/TAP设备的概念和常见作用(即打通VM和Host间的网络),以及和Veth-pair网线的区别。这一节内部比较简单,因为主要内容已经在Veth网线里面讲了。

什么是TUN/TAP

TUN/TAP是Linux中一种虚拟出来的网络设备,简单说,它也是一种“网线”,只是这种网线和Veth牌网线有点不同。Veth网线的2头是一样的,都是水晶头。TUN/TAP网线的2头长得不一样,一头是水晶头,另一头是USB的。

稍正式一点的描述,它是一种用户空间和内核空间传输报文用的网线。一头是普通的网卡,跟eth0一样,Host主机可以用;另一头则是一个文件描述符,给用户空间的程序用的。

大家都知道一个VM本质上是一个qemu进程,所以其实TUN/TAP网线大多都是给VM用的。即上图的右边其实就是VM啦,它里面看到的eth0就是虚拟出来的。

于是你跟Veth网线一样的去理解就行了,那么Host主机网络模型也类似:

 如果要添加TUNTAP网卡,还是使用咱们的ip命令。

[code]ip tuntap add tap0 mode tap

这样就可以用的app程序,去open文件句柄“/dev/net/tun”了,发送&接收报文了。

那当你需要将你创建的这些VM连接起来组成局域网,或者与外界(主机外部)通信时,就需要用上Linux Bridge了。

Docker容器也是这样,如果希望将很多容器按组管理,或者容器连通外网,也会需要使用Linux Bridge(上图的 br0)。这个咱们下节课讲.

作者:tsjsdbd

  • 点赞
  • 收藏
  • 分享
  • 文章举报
华为云 企业博客 发布了1060 篇原创文章 · 获赞 5452 · 访问量 107万+ 他的留言板 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: