tun/tap 驅動程序實現了虛擬網卡的功能,tun表示虛擬的是點對點設備,tap表示虛擬的是以太網設備,這兩種設備針對網絡包實施不同的封裝。利用tun/tap 驅動,可以將tcp/ip協議棧處理好的網絡分包傳給任何一個使用tun/tap驅動的進程,由進程重新處理後再發到物理鏈路中。
開源項目openvpn (http://openvpn.sourceforge.net)和Vtun(http://vtun.sourceforge.net)都是利用tun/tap驅動實現的隧道封裝。
參考鏈接:
http://blog.csdn.net/lishuhuakai/article/details/73136442
http://blog.csdn.net/lishuhuakai/article/details/73136469
http://blog.csdn.net/lishuhuakai/article/details/73136509
https://www.cnblogs.com/chris-cp/p/4688375.html