Linux 创建 TAP 类型虚拟设备的命令
(by GPT-5.4)
最常用的是:
bash
ip tuntap add dev tap0 mode tap
然后把它启起来:
bash
ip link set tap0 up
一组完整示例
bash
# 创建 tap 设备
ip tuntap add dev tap0 mode tap
# 启动设备
ip link set tap0 up
# 查看设备
ip link show tap0
如果要指定属主
有些场景要让普通用户进程(比如 qemu)打开这个 TAP 设备,可以指定 owner:
bash
ip tuntap add dev tap0 mode tap user root
或者:
bash
ip tuntap add dev tap0 mode tap user <用户名>
例如:
bash
ip tuntap add dev tap0 mode tap user qemu
如果还要加入 bridge
比如接到 br0:
bash
ip tuntap add dev tap0 mode tap
ip link set tap0 up
ip link set tap0 master br0
删除 TAP 设备
bash
ip link del tap0
或者:
bash
ip tuntap del dev tap0 mode tap
补充说明
TAP 和 TUN 的区别
tap:二层设备,收发以太网帧tun:三层设备,收发IP 包
创建 TAP:
bash
ip tuntap add dev tap0 mode tap
创建 TUN:
bash
ip tuntap add dev tun0 mode tun
查看tap/tun设备
makefile
ip tuntap show
这里显示有两个tap类型的设备
vnet0: tap vnet_hdr
vnet1: tap vnet_hdr
一句话总结
创建 TAP 设备最常用命令就是:
bash
ip tuntap add dev tap0 mode tap
ip link set tap0 up