日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

linux虚拟网络设备之,Linux虚拟网络设备

發布時間:2024/9/27 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux虚拟网络设备之,Linux虚拟网络设备 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

8種機械鍵盤軸體對比

本人程序員,要買一個寫代碼的鍵盤,請問紅軸和茶軸怎么選?

tap/tun常用于隧道通訊,通過一個字符設備來實現用戶態和內核態的通訊,字符設備一端連接著用戶空間,一端連接著內核空間。

對應的字符設備文件位置:tap: /dev/tap0

tun: /dev/net/tun

當應用程序打開字符設備文件時,驅動程序會創建并注冊相應的虛擬設備接口,以tunX或tapX命名。應用程序關閉設備文件時,驅動程序會刪除tunX和tapX網絡虛擬設備,并刪除建立起來的路由信息。

兩個設備的不同點:tap是一個二層網絡設備,只能處理二層的以太網幀

tun是一個點對點的三層網絡設備,只能處理處理三層的IP數據包1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26┌──────────────┐

│ │

│ APP │

│ │

└───────┬──────┘

┌────────────▼──────────┐

│ │

─ ─ ─ ─ ─ ─│ /dev/net/tun ├ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─

│ │

└────────────┬──────────┘

┌───────▼──────┐ ┌──────────────┐

│ │ │ │

│ tunX ├────────────────?│Network Stack │

│ │ │ │

└──────────────┘ └──────────────┘

tun設備應用舉例1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33┌──────────────┐ ┌──────────────┐

│ │ │ │

│ APP A │ │ APP B │?┐

│ │ │ │ │

└───────┬──────┘ └───────┬──────┘ │

│ │ │

│ │ │

1│ │ │

│ 5│ │

│ │ │

─ ─ ─ ─ ─ ─ ─ ─ ┼ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─│─ ─ ─ ─ ┼ ─ ─ ─ ─ ─

│ │ │

│ │ 4│

│ │ │

┌────────────▼────────────────────────▼─────┐ │

│ │ │

│ Network Stack │ │

│ │ │

└────────────┬───────────────────────┬──────┘ │

│ │ │

6│ 3│ │

│ │ │

┌───────▼──────┐ ┌─▼─────────┴──┐

│ │ │ │

10.1.1.11 │ eth0 │ │ tun0 │ 192.168.1.11

│ │ │ │

└───────┬──────┘ └──────────────┘

7│

10.1.1.100 / 192.168.1.100

應用程序A要發送數據到其他物理機192.168.1.100,由于物理網絡環境下只有10.1.1.11和10.1.1.100是相互連通的,192.168.1.11和192.168.1.100是不通的,為了192.168.1.11和192.168.1.100能夠進行通訊,需要將數據包進行一次封裝。

應用程序B是通過打開字符設備文件/dev/net/tun0的方式來打開網絡設備

流程如下:A構造數據包,目的ip為192.168.1.100,并發送給協議棧

協議棧根據數據包中的ip地址,匹配路由規則,要從tun0出去

內核協議棧將數據包發送給tun0網絡設備

tun0發送應用程序B打開,于是將數據發送給應用程序B

B收到數據包后,在用戶態構造一個新的數據包,源IP為eth0的IP 10.1.1.11,目的IP為配置的對端10.1.1.100,并封裝原來的數據包

協議棧根據當前數據包的IP地址選擇路由,將數據包發送給eth0

reference

總結

以上是生活随笔為你收集整理的linux虚拟网络设备之,Linux虚拟网络设备的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。