【華爲雲技術分享】《跟唐老師學習雲網絡》 - TUN/TAP網線

介紹TUN/TAP設備的概念和常見作用(即打通VM和Host間的網絡),以及和Veth-pair網線的區別。這一節內部比較簡單,因爲主要內容已經在Veth網線裏面講了。

什麼是TUN/TAP

TUN/TAP是Linux中一種虛擬出來的網絡設備,簡單說,它也是一種“網線”,只是這種網線和Veth牌網線有點不同。Veth網線的2頭是一樣的,都是水晶頭。TUN/TAP網線的2頭長得不一樣,一頭是水晶頭,另一頭是USB的。

image.png

稍正式一點的描述,它是一種用戶空間和內核空間傳輸報文用的網線。一頭是普通的網卡,跟eth0一樣,Host主機可以用;另一頭則是一個文件描述符,給用戶空間的程序用的。

image.png

大家都知道一個VM本質上是一個qemu進程,所以其實TUN/TAP網線大多都是給VM用的。即上圖的右邊其實就是VM啦,它裏面看到的eth0就是虛擬出來的。

於是你跟Veth網線一樣的去理解就行了,那麼Host主機網絡模型也類似:

image.png

 如果要添加TUNTAP網卡,還是使用咱們的ip命令。

image.png

ip tuntap add tap0 mode tap

這樣就可以用的app程序,去open文件句柄“/dev/net/tun”了,發送&接收報文了。

那當你需要將你創建的這些VM連接起來組成局域網,或者與外界(主機外部)通信時,就需要用上Linux Bridge了。

image.png

Docker容器也是這樣,如果希望將很多容器按組管理,或者容器連通外網,也會需要使用Linux Bridge(上圖的 br0)。這個咱們下節課講.

作者:tsjsdbd

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章